Regular Expression Search - Match Operators | |||||||||||||||||||||
Operator | Description | ||||||||||||||||||||
* |
|
||||||||||||||||||||
+ |
|
||||||||||||||||||||
? |
|
||||||||||||||||||||
! |
|
||||||||||||||||||||
! |
|
||||||||||||||||||||
^ |
|
||||||||||||||||||||
$ |
|
||||||||||||||||||||
^^ |
|
||||||||||||||||||||
$$ |
|
Regular Expression Search - Subexpression Operators | |||||||||||||||||||
Operator | Description | ||||||||||||||||||
[] |
|
||||||||||||||||||
() |
|
||||||||||||||||||
+n |
|
Special Search Characters (Literals) | |
- + * ? ( ) [ ] \ | $ ^ ! | If you wish to search for any of these characters, they must be preceded by the character to be interpreted as a literal in a search. |
Some Example Regular Expression Search Operations | ||
What to Match | Operator | Effect |
Any single character | ? | g?t finds get, got, gut |
Any string of characters (one or more) | + | w+e finds wide, white, write but not we |
Any string of characters (or none) | * | w*e finds wide, white, write and we |
One of the specified characters | [] | g[eo]t finds get and got but not gu |
One of the characters in a range | [-] | [b-p]at finds bat, cat, fat, hat, mat but not rat or sat |
All characters | [] | i[] finds line, list, late |
One expression or another | (|) | W(in|indows) will find Win or Windows |
One or more expressions | +() | +(at) will find atat in catatonic and at in battle |
All characters (perhaps on different lines) | *[] | h[]d finds helped, Hello World, and Hello (cr lf) Win95 World. /\**[]\*/ will match C style comments (on several lines if necessary (*[] will span across multiple lines up to 32767 characters) |
A string that doesn't start with an expression | !() | : !(http) finds : in "following:" but not in "http://www.funduc.com" Note: Syntax for pre-3.1 versions would be !(http): |
One of the characters not in a range | ![-] | [a-z]at!([b-p]at) matches r in "rat" & s in "sat" but nothing in "bat", "cat", "hat".
Note: Syntax for pre-3.1 versions would be ![b-p]at
|
An expression at the beginning of a line | ^ | ^the finds the at the beginning of a line and The (if case sensitive is turned off) |
An expression at the end of a line | $ | end$ finds end when its the last string on a line. |
One or more column(s) before or after a string | +n | [h]+4// finds http:// but not https:// |
Using Special Characters | \ | \(\*\) will find (*) |
Regular Expression Replacements - Match Operators | ||||||||||||||||||||||||||||||||||
Operator | Description | |||||||||||||||||||||||||||||||||
%n | Core replacement operators use a %n convention, where n corresponds to a component in the regular expression search string. For example, %1 refers to the first expression value in the search string, %2 refers to the second, and so on. The %n parameters may be used several times, omitted, or used in any order. Up to 24 parameters may be used at once by referring to those over number %9 moving up the ASCII table, e.g., 123456789:;<=>?@ABCDEFGH. However, if your search-replace involves a large number of parameters you may find it easier to use a multi-step script.
| |||||||||||||||||||||||||||||||||
< | Make lower case operator. To be used in conjunction with %n, e.g., %1< will replace the original first matched expression with its lower case version. | |||||||||||||||||||||||||||||||||
> | Make upper case operator. To be used in conjunction with %n, e.g., %1> will replace the original first matched expression with its upper case version. | |||||||||||||||||||||||||||||||||
%n> | Counter Operator. When used in conjunction with numeric regular expression search (e.g., *[0-9]), %n> begins incrementing with a value of +1 from the value of the first number found by *[0-9]. For example:
| |||||||||||||||||||||||||||||||||
%n>#> | Counter Operator. This operator allows you to specify a starting value for an incrementing replacement counter. %n>starting value> begins incrementing with a value of +1 from the starting value you supply. This counter operator also respects the number of digit places you supply. To begin incrementing with a value of 1, use the expression %n>0>. The expression %n>000> would begin replacements with a a value of 001. Another example is:
|
Special Regular Expression Replacement Characters (Literals) | |
% \ < > | If you wish to replace any of these characters, they must be preceded by the character to be interpreted as a literal in a replacement. |
Regular Expression Search & Replacement Examples | ||
Search Expression | Replacement Expression | Effect |
*.* | %1>.%2> | c:\windows\win.ini ==> C:\WINDOWS\WIN.INI |
+[a-z] | %1> | Windows ==> WINDOWS |
7*.htm | 5%1.htm | 711.htm ==> 511.htm 7days.htm ==> 5days.htm |
[253]7[832].htm | %15%2.htm | 3572.htm ==> 3552.htm |
*[253]7[832].htm | %15%2.htm | 72.htm ==> 52.htm |
(homepage|index).htm | %11.htm | homepage.htm ==> homepage1.htm index.htm ==> index1.htm |
+(12)[0-9] | %1%2a | 12532 ==> 12532a 1212753 ==> 1212753a |
???*(d|m).htm | %1%2%3d1.htm | card.htm ==> card1.htm form.htm ==> form1.htm |
back2.jpg*[]height="30" | back2.jpg%1height="32" | A multiline Search/Replace changing the height setting for 'back2.jpg' regardless of differing 'alt' text or how the html editor line breaks the code, e.g., src="images/back2.jpg" alt="Go Back" border="0" width="57" height="30" Becomes: src="images/back2.jpg" alt="Go Back" border="0" width="57" height="32" |
?(Windows) | OS/2 | Windows ==> OS/2 (just kidding) |
Regular Expression Counters
|
||||||||||||||||||||||||||||||||||||||||||
Regular Expression search & replace Counter
Operations allow you to quickly revise a sequence of numbers in one or
more files. You can also insert sequential numbers to text strings where
no numbers exist originally. Counter operations make use of *[0-9] regular
expression search operator and either the %n> or %n>user defined starting value> regular expression replacement operators.
The %n> replacement operator begins incrementing by one with a value of +1 from the value found by your *[0-9] expression (e.g.*[0-9]+1). The %n>user defined starting value>
replacement operator increments by one beginning with a value of (user
defined
starting value+1). This counter operator also respects the
number of digit places you supply. Incrementing counter operations may
be combined with other regular expression search & replace
operators. For example, a search expression such as (file|variable)*[0-9] with a counter
replacement expression such as %1%2>100> is perfectly legal.
|
Special Replacement Operators - %%srpath%% & %%srfile%%
|
||||||||||||||||||||||||||||||||||||||||||
Search and Replace currently has two special
replacement operators - %%srpath%% and %%srfile%%. %%srpath%% inserts
the path to the file in which the search string was found and %%srfile%%
inserts the filename of that file. %%srpath%% and %%srfile%% can be
used in ordinary
search & replace operations, Regular Expression operations,
Regular Expression counters, & Binary mode operations.
|
Environment Operators
|
You can search for, or make replacements based
on, Environment Variables via the Binary Mode dialog or a Regular
Expression string. Searches may be case sensitive or not. The syntax is: %%envvar=variable name%% where variable name is the name of the environment variable to use. For example, to search for the environment variable temp, enter the string %%envvar=temp%% in the binary mode search block field or your regular expression. If the value of your temp environment variable is c:\windows\temp, search hits would occur wherever the string c:\windows\temp is found. If Case Sensitive is on, c:\windows\temp would be found but C:\WINDOWS\TEMP would not. To insert the value of the environment variable winbootdir in a replacement string, enter the string %%envvar=winbootdir%% in binary mode replace block field or your regular expression. If the value of your winbootdir variable is C:\WINDOWS, the string C:\WINDOWS would be used in replacements. |
Responses
0 Respones to "Regular Expression Operations Examples"
Post a Comment