字符匹配语法:
| 字符语法 | 语法解释 | 语法例子 |
| /d | 匹配数字(0~9) | ‘/d’匹配8,不匹配12; |
| /D | 匹配非数字 | ‘/D’匹配c,不匹配3; |
| /w | 匹配任意单字符 | ‘/w/w’ 匹配A3,不匹配@3; |
| /W | 匹配非单字符 | ‘/W’匹配@,不匹配c; |
| /s | 匹配空白字符 | ‘/d/s/d’匹配3 d,不匹配abc; |
| /S | 匹配非空字符 | ‘/S/S/S’匹配A#4,不匹配3 d; |
| . | 匹配任意字符 | ‘....’匹配A$ 5,不匹配换行; |
| […] | 匹配括号中任意字符 | [b-d]匹配b、c、d, 不匹配e; |
| [^…] | 不匹配括号内字符 | [^b-z]匹配a,不匹配b-z的字符; |
重复匹配语法:
| 重复语法 | 语法解释 | 语法例子 |
| {n} | 匹配n次字符 | /d{3}匹配/d/d/d,不匹配/d/d或/d/d/d/d |
| {n,} | 匹配n次和n次以上 | /w{2}匹配/w/w和/w/w/w以上,不匹配/w |
| {n,m} | 匹配n次上m次下 | /s{1,3}匹配/s,/s/s,/s/s/s,不匹配/s/s/s/s |
| ? | 匹配0或1次 | 5?匹配5或0,不匹配非5和0 |
| + | 匹配一次或多次 | /S+匹配一个以上/S,不匹配非一个以上/S |
| * | 匹配0次以上 | /W*匹配0以上/W,不匹配非N*/W |
字符定位语法:
| 重复语法 | 语法解释 | 语法例子 |
| ^ | 定位后面模式开始位置 |
|
| $ | 前面模式位于字符串末端 |
|
| /A | 前面模式开始位置 |
|
| /z | 前面模式结束位置 |
|
| /Z | 前面模式结束位置(换行前) |
|
| /b | 匹配一个单词边界 |
|
| /B | 匹配一个非单词边界 |
|
转义匹配语法:
| 转义语法 | 涉及字符(语法解释) | 语法例子 |
| “/”+实际字符 | / . * + ? | ( ) { }^ $ | 例如://匹配字符“/” |
| /n | 匹配换行 |
|
| /r | 匹配回车 |
|
| /t | 匹配水平制表符 |
|
| /v | 匹配垂直制表符 |
|
| /f | 匹配换页 |
|
| /nnn | 匹配一个8进制ASCII |
|
| /xnn | 匹配一个16进制ASCII |
|
| /unnnn | 匹配4个16进制的Uniode |
|
| /c+大写字母 | 匹配Ctrl-大写字母 | 例如:/cS匹配Ctrl+S |
构造正则表达式需要涉及Regex类,在Regex类中包括:IsMatch()、Replace()、Split()和Match的类;
如果使用的是 C#,则可以使用以 @ 为前缀以禁用转义的 C# 字符串(例如 @"/s2000"),/s不再转义。
423

被折叠的 条评论
为什么被折叠?



