Slick V3.3 Computer Accessories User Manual


 
Example Description
UNIX regular expression:
Search for: (if|while)
Replace with: x\1y\2
SlickEdit® regular expression:
Search for: {if|while}
Replace with: x#0y#1
Brief regular expression:
Search for: {{if}|while}}
Replace with: x\0y\1
Replace occurrences of "if" and "while" with "xify"
and "xwhiley." Unmatched groups are null. Note:
The UNIX syntax \2 (SlickEdit syntax #1, Brief syn-
tax \1) is replaced with null.
UNIX regular expression:
Search for: ^(.*?),(.*)$
Replace with: \2,\1
SlickEdit regular expression:
Search for: ^{?*},{?*}$
Replace with: #1,#0
Brief regular expression:
Search for: ^{*},{*}$
Replace with: \1,\0
Reverse text on lines containing a comma. Lines
with "abc,def" will be changed to "def,abc." Notice
that the UNIX regular expression search string uses
a minimal matching operator *? so that the comma
actually matches the first comma in the line and not
the last.
Minimal versus Maximal Matching
If you are using tagged expressions or regular expressions to perform a search and replace, you need to
understand the difference between the minimal and maximal operators.
Take, for example, a line of text which contains a DOS file name: \path1\path2\path3\name.ext.
The regular expression ^\\.*?\\ (UNIX), ^\\?*\\ (SlickEdit®), or <\\*\\ (Brief) will match the string \path1\.
The regular expression ^\\.*\\ (UNIX), ^\\?@\\ (SlickEdit), or <\\\:*\\ (Brief), which uses the maximal oper-
ator, matches the string \path\path2\path3\.
As a rule of thumb, you will usually want to use the minimal matching operators *? (UNIX), * (SlickEdit), or
@ (Brief) and +? (UNIX), + (SlickEdit/Brief) after a less-specific regular expression such as . (UNIX) or ?
(SlickEdit/Brief).
You will usually want to use the maximal matching operators after a regular expression which matches
something more specific. For example, to search for a string of digits and prefix each string of digits with
the character $, you would specify the following in the Replace tab of the Find and Replace view:
UNIX regular expression:
Search for: ([0-9]+)
Replace with: $\1
Find and Replace with Regular
Expressions
195