位置:海鸟网 > IT > ASP.NET >

正则表达式的字符,定位字符和重复字符

正则表达式语法表示的字符类

字符类匹配的字符示例

d从0~9的数字dd可以匹配72,但不能匹配7a或者a7

D非数字的字符DDD可匹配a%c,但不能匹配123

w下划线和单词字符www可以匹配a2_,但不能匹配x&a

W非单词字符和非下划线WW可以匹配&^,但不能匹配a1

s空白符,包括了制表符,换行符,回车符,换页符和垂直制表符

S非空白符

.任意字符

[...]括号内的任意字符

[abc]匹配单个字符a,b或c,但不匹配其他字符

[a-z]匹配a~z的任意字符

[^...]非括号内的任意字符

[^abc]匹配a,b,c出外的任意字符

[a-z]匹配非a~z的任意字符,但匹配大字字母







定位字符

定位字符描述

^

其后的模式必须在字符串的开始处,如果是一个多行字符串,应位于任意一行的开始。对于多行文本,需要设定multiline标志

$其前面的模式必须在字符串的末尾处,如果是一个多行字符串,应该在任意一行的末尾

A前面的模式必须在字符串的开始处;多行标志被忽略

z前面的模式必须在字符串的末尾处;多行标志被忽略

Z前面的模式必须在字符串的末尾;或位于换行符前

b匹配一个单词边界,是指上是单词字符和非单词字符间的点。单词字符是[a-zA-Z0-9]中的任意字符。位于一个单词的开始

B匹配一个非但此边界的位置,不再一个单词的开始





基本的重复字符

重复字符含意示例

{n}匹配前面的字符n次x{2}匹配xx,但是不匹配x,或xxx

{n,}匹配前面的字符n次或更多x{2,}匹配xx或xxx及更多的x,

{n,m}匹配前面的字符最少n次,最多m次x{2,4}匹配xx,xxx,xxxx但是不匹配x,或xxxxx

?匹配前面的字符0次或1次x?匹配x或空

+匹配前面的字符1次或更多x+匹配x或等多的x

*匹配前面的字符0次或更多x*匹配空或更多x

{n,m}