正则表达式速查表(ASP.NET)

出处:RegExLib.com Regular Expression Cheat Sheet (.NET)

元字符 说明
^   匹配字符串的开始位置  
$   匹配字符串的结束位置  
.   匹配任意单个字符(换行符 \n 除外)  
|   交替  
{…}   指定要限定的数量  
[...]   指定要匹配的字符集  
(…)   对表达式进行逻辑分组  
*   匹配零或多个前面的表达式  
+   匹配一或多个前面的表达式  
?   匹配零或一个前面的表达式  
\   放在上面任何一个字符之前,表示匹配该字符本身。放在其他特殊字符后面,表示字符转义(见下面)  
字符转义 说明
原始字符   除 . $ ^ { [ ( | ) ] } * + ? \ 之外的字符均匹配自身  
\a   匹配铃声(闹铃)\u0007  
\b   在[]中匹配一个空格 \u0008,在其他情况下匹配字边界(位于 \w 和 \W 字符之间)  
\t   匹配制表符 \u0009  
\r   匹制回车符 \u000D  
\v   匹配垂直制表符 \u000B  
\f   匹配换页符 \u000C  
\n   匹配换行符 \u000A  
\e   匹配退出键(符) \u001B  
\040   匹配以八进制表示的 ASCII 字符(最多三位数);在没有前导零的情况下,如果只有一位数字或者相应数字与某个捕获组的编号对应,那就是反向引用(backreference)。字符 \040 表示一个空格。  
\x20   匹配以十六进制表示的 ASCII 字符(两位数)  
\cC   匹配 ASCII 控制符,例如 \cC 匹配 Ctrl+C  
\u0020   匹配以十六进制表示的 Unicode 字符  
\*   反斜杠后面如果不是一个可转义的字符,则匹配该字符本身。例如,\* 就相当于\x2A  
字符类 说明
.   匹配除 \n 之外的任意字符。  
[aeiou]   匹配特定字符集中包含的任意一个字符  
[^aeiou]   匹配特定字符集中不包含的任意一个字符  
[0-9a-fA-F]   连字符(-)用来指定连续的字符范围  
\p{name}   匹配由{name}指定的命名字符类中的任意字符  
\P{name}   匹配不包含在{name}指定的组或块范围中的文本  
\w   匹配英文数字字母字符,在指定兼容ECMAScript的情况下,等价于[a-zA-Z0-9]  
\W   匹配非英文数字字母字符,在指定兼容ECMAScript的情况下,等价于[^a-zA-Z0-9]  
\s   匹配任意空白字符,在指定兼容ECMAScript的情况下,等价于[\f\n\r\t\v]  
\S   匹配任意非空白字符,在指定兼容ECMAScript的情况下,等价于[^\f\n\r\t\v]  
\d   匹配数字字符,在指定兼容ECMAScript的情况下,等价于[0-9]  
\D   匹配非数字字符,在指定兼容ECMAScript的情况下,等价于[^0-9]  

英文版:
Metacharacters Defined
MChar Definition
^   Start of a string.  
$   End of a string.  
.   Any character (except \n newline)  
|   Alternation.  
{...}   Explicit quantifier notation.  
[...]   Explicit set of characters to match.  
(...)   Logical grouping of part of an expression.  
*   0 or more of previous expression.  
+   1 or more of previous expression.  
?   0 or 1 of previous expression; also forces minimal matching when an expression might match several strings within a search string.  
\   Preceding one of the above, it makes it a literal instead of a special character. Preceding a special matching character, see below.  
Metacharacter Examples
Pattern Sample Matches
^abc   abc, abcdefg, abc123, ...  
abc$   abc, endsinabc, 123abc, ...  
a.c   abc, aac, acc, adc, aec, ...  
bill|ted   ted, bill  
ab{2}c   abbc  
a[bB]c   abc, aBc  
(abc){2}   abcabc  
ab*c   ac, abc, abbc, abbbc, ...  
ab+c   abc, abbc, abbbc, ...  
ab?c   ac, abc  
a\sc   a c  
Character Escapes
Escaped Char Description
ordinary characters   Characters other than . $ ^ { [ ( | ) ] } * + ? \ match themselves.  
\a   Matches a bell (alarm) \u0007.  
\b   Matches a backspace \u0008 if in a []; otherwise matches a word boundary (between \w and \W characters).  
\t   Matches a tab \u0009.  
\r   Matches a carriage return \u000D.  
\v   Matches a vertical tab \u000B.  
\f   Matches a form feed \u000C.  
\n   Matches a new line \u000A.  
\e   Matches an escape \u001B.  
\040   Matches an ASCII character as octal (up to three digits); numbers with no leading zero are backreferences if they have only one digit or if they correspond to a capturing group number. (For more information, see Backreferences.) For example, the character \040 represents a space.  
\x20   Matches an ASCII character using hexadecimal representation (exactly two digits).  
\cC   Matches an ASCII control character; for example \cC is control-C.  
\u0020   Matches a Unicode character using a hexadecimal representation (exactly four digits).  
\*   When followed by a character that is not recognized as an escaped character, matches that character. For example, \* is the same as \x2A.  
Character Classes
Char Class Description
.   Matches any character except \n. If modified by the Singleline option, a period character matches any character. For more information, see Regular Expression Options.  
[aeiou]   Matches any single character included in the specified set of characters.  
[^aeiou]   Matches any single character not in the specified set of characters.  
[0-9a-fA-F]   Use of a hyphen (–) allows specification of contiguous character ranges.  
\p{name}   Matches any character in the named character class specified by {name}. Supported names are Unicode groups and block ranges. For example, Ll, Nd, Z, IsGreek, IsBoxDrawing.  
\P{name}   Matches text not included in groups and block ranges specified in {name}.  
\w   Matches any word character. Equivalent to the Unicode character categories [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \w is equivalent to [a-zA-Z_0-9].  
\W   Matches any nonword character. Equivalent to the Unicode categories [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \W is equivalent to [^a-zA-Z_0-9].  
\s   Matches any white-space character. Equivalent to the Unicode character categories [\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \s is equivalent to [ \f\n\r\t\v].  
\S   Matches any non-white-space character. Equivalent to the Unicode character categories [^\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \S is equivalent to [^ \f\n\r\t\v].  
\d   Matches any decimal digit. Equivalent to \p{Nd} for Unicode and [0-9] for non-Unicode, ECMAScript behavior.  
\D   Matches any nondigit. Equivalent to \P{Nd} for Unicode and [^0-9] for non-Unicode, ECMAScript behavior.  

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjdpsg.html