Regular Expression form MSDN

Regular expressions are a concise and flexible notation for finding and replacing patterns of text. The regular expressions used within Visual Studio are a superset of the expressions used in Visual C++ 6.0, with a simplified syntax.

You can use the following regular expressions in the Find, Replace, Find in Files or Replace in Files dialog boxes to refine and expand your search.

Note You must select the Use check box in the Find, Replace, Find in Files, and Replace in Files dialog boxes before using any of the following expressions as part of your search criteria.

The following expressions can be used to match characters or digits in your search string:

Expression

Syntax

Description

Any character

.

Matches any one character except a line break.

Maximal — zero or more

*

Matches zero or more occurrences of the preceding expression.

Maximal — one or more

+

Matches at least one occurrence of the preceding expression.

Minimal — zero or more

@

Matches zero or more occurrences of the preceding expression, matching as few characters as possible.

Minimal — one or more

#

Matches one or more occurrences of the preceding expression, matching as few characters as possible.

Matches any one of the characters within the []. To specify a range of characters, list the starting and ending character separated by a dash (-), as in [a-z].

Character not in set

[^...]

Matches any character not in the set of characters following the ^.

Beginning of line

^

Anchors the match to the beginning of a line.

End of line

$

Anchors the match to the end of a line.

Beginning of word

<

Matches only when a word begins at this point in the text.

End of word

>

Matches only when a word ends at this point in the text.

Grouping

()

Groups a subexpression.

Or

|

Matches the expression before or after the OR symbol (|). Mostly used within a group. For example, (sponge|mud) bath matches "sponge bath" and "mud bath."

Escape

/

Matches the character following the backslash (/). This allows you to find characters used in the regular expression notation, such as { and ^. For example, /^ Searches for the ^ character.

Tagged expression

{}

Tags the text matched by the enclosed expression.

nth tagged text

/n

In a Find or Replace expression, indicates the text matched by the nth tagged expression, where n is a number from 1 to 9.

In a Replace expression, /0 inserts the entire matched text.

Right-justified field

/(w,n)

In a Replace expression, right-justifies the nth tagged expression in a field at least w characters wide.

Left-justified field

/(-w,n)

In a Replace expression, left-justifies the nth tagged expression in a field at least w characters wide.

Prevent match

~(X)

Prevents a match when X appears at this point in the expression. For example, real~(ity) matches the "real" in "realty" and "really," but not the "real" in "reality."

Alphanumeric character

:a

Matches the expression ([a-zA-Z0-9]).

Alphabetic character

:c

Matches the expression([a-zA-Z]).

Decimal digit

:d

Matches the expression ([0-9]).

Hexadecimal digit

:h

Matches the expression ([0-9a-fA-F]+)..

Identifier

:i

Matches the expression ([a-zA-Z_$][a-zA-Z0-9_$]*).

Rational number

:n

Matches the expression (([0-9]+.[0-9]*)|([0-9]*.[0-9]+)|([0-9]+)).

Quoted string

:q

Matches the expression (("[^"]*")|('[^']*'))

Alphabetic string

:w

Matches the expression ([a-zA-Z]+)

Decimal integer

:z

Matches the expression ([0-9]+).

Escape

/e

Unicode U+001B.

Bell

/g

Unicode U+0007.

Backspace

/h

Unicode U+0008.

Line break

/n

Matches a platform-independent line break. In a Replace expression, inserts a line break.

Tab

/t

Matches a tab character, Unicode U+0009.

Unicode character

/x#### or /u####

Matches a character given by Unicode value where #### is hexadecimal digits. You can specify a character outside the Basic Multilingual Plane (that is, a surrogate) with the ISO 10646 code point or with two Unicode code points giving the values of the surrogate pair.

The following table lists the syntax for matching by standard Unicode character properties. The two-letter abbreviation is the same as listed in the Unicode character properties database. These may be specified as part of a character set. For example, the expression [:Nd:Nl:No] matches any kind of digit.

Expression

Syntax

Description

Uppercase letter

:Lu

Matches any one capital letter. For example, :Luhe matches "The" but not "the".

Lowercase letter

:Ll

Matches any one lower case letter. For example, :Llhe matches "the" but not "The".

Title case letter

:Lt

Matches characters that combine an uppercase letter with a lowercase letter, such as Nj and Dz.

Modifier letter

:Lm

Matches letters or punctuation, such as commas, cross accents, and double prime, used to indicate modifications to the preceding letter.

Other letter

:Lo

Matches other letters, such as gothic letter ahsa.

Decimal digit

:Nd

Matches decimal digits such as 0-9 and their full-width equivalents.

Letter digit

:Nl

Matches letter digits such as roman numerals and ideographic number zero.