Appendix A. Regular Expressions

The following tables summarize the regular-expression grammar and syntax supported by the regular-expression classes in System.Text.RegularExpression. Each of the modifiers and qualifiers in the tables can substantially change the behavior of the matching and searching patterns. For further information on regular expressions, we recommend the definitive Mastering Regular Expressions by Jeffrey E. F. Friedl (O’Reilly & Associates, 1997).

All the syntax described in the tables should match the Perl5 syntax, with specific exceptions noted.

Table A-1. Character escapes

Escape code sequenceMeaningHexadecimal equivalent
\a Bell \u0007
\b Backspace \u0008
\t Tab \u0009
\r Carriage return \u000A
\v Vertical tab \u000B
\f Form feed \u000C
\n Newline \u000D
\e Escape \u001B
\040 ASCII character as octal 
\x20 ASCII character as hex 
\cC ASCII control character 
\u0020 Unicode character as hex 
\non-escape A nonescape character 

Special case: within a regular expression, \b means word boundary, except in a [] set, in which \b means the backspace character.

Table A-2. Substitutions

Expression

Meaning

$group-number Substitutes last substring matched by group-number
${group-name} Substitutes last substring matched by (?<group-name>)

Substitutions are specified only within a replacement pattern.

Table A-3. Character sets

Expression

Meaning

. Matches any character except \n
[characterlist] Matches a single character in the list
[^characterlist] Matches a single ...

Get C# in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.