Regular expressions allow more complex search functions to be performed in a single operation.

 

Regular Expressions (Unix Syntax):

 

Symbol            Function

\           Indicates the next character has a special meaning. "n" on it’s own matches the character "n". "\n" matches a linefeed or newline character.  See examples below (\d, \f, \n etc).

^          Matches/anchors the beginning of line.

$          Matches/anchors the end of line.

*          Matches the preceding character zero or more times.

+          Matches the preceding character one or more times. Does not match repeated newlines.

.           Matches any single character except a newline character. Does not match repeated newlines.

(expression)    Brackets or tags an expression to use in the replace command.A regular expression may have up to 9 tagged expressions, numbered according to their order in the regular expression.The corresponding replacement expression is \x, for x in the range 1-9.  Example: If (h.*o) (f.*s) matches "hello folks", \2 \1 would replace it with "folks hello".

[xyz]    A character set. Matches any characters between brackets.

[^xyz]  A negative character set. Matches any characters NOT between brackets.

\d         Matches a digit character. Equivalent to [0-9].

\D        Matches a nondigit character. Equivalent to [^0-9].

\f          Matches a form-feed character.

\n         Matches a linefeed character.

\r          Matches a carriage return character.

\s         Matches any white space including space, tab, form-feed, etc but not newline.

\S         Matches any nonwhite space character but not newline.

\t          Matches a tab character.

\v         Matches a vertical tab character.

\w        Matches any word character including underscore.

\W       Matches any nonword character.

Note - ^ refers to the character '^' NOT Control Key + value.

 

Examples:

 

m.n matches "man", "men", "min" but not "moon".

 

            Te+st matches "test", "teest", "teeeest" etc. BUT NOT "tst".

 

            Te*st matches "test", "teest", "teeeest" etc. AND "tst".

 

            [aeiou] matches every lowercase vowel

            [,.?] matches a literal ",", "." or "?".

            [0-9a-z] matches any digit, or lowercase letter

            [^0-9] matches any character except a digit (^ means NOT the following)

 

You may search for an expression A or B as follow:

 

"(John|Tom)"

 

This will search for an occurrence of John or Tom.  There should be nothing between the two expressions.

 

You may combine A or B and C or D in the same search as follows:

 

"(John|Tom) (Smith|Jones)"

 

 

This will search for John or Tom followed by Smith or Jones.