C#  正则表达式  匹配指定数量的字符
通过元字符、转义符以及ASCII码等正则表达式的组成部分,可以判断多个字符是否符合正则表达式的要求。正则表达式可以通过点“.”、星号“*”、加号“+”、问号“?”等元字符匹配若干数量的字符或字符串。这些元字符又被称作数量元字符。除这些元字符外,还可以通过大括号“{}”加数字的方式定义指定数量字符和字符串的匹配。
点“.”元字符
使用点“.”可以匹配任意单个字符或字符串。例如,单词big和bug都是由字母b和g以及之间的元音字母组成,这两个单词可以通过点“.”来匹配,如下所示。
b.g
星号“*”元字符
使用星号“*”可以匹配0到任意多个字符或字符串。例如,数字1234567890和数字10,可以通过数字1和0以及星号“*”实现匹配,如下所示。
1*0
加号“+”元字符
使用加号“+”元字符可以匹配一个或更多的字符或字符串。例如,单词happen和happy都是由4个字母happ开头,即可以happ和加号“+”实现匹配,如下所示。
(happ)+
需要注意的是加号“+”和星号“*”元字符之间是有区别的。星号“*”元字符可以匹配0个字符,而加号“+”元字符则必须匹配一个以上的字符。
问号“?”元字符
问号“?”元字符可以匹配0个或1个字符或字符串。例如,该元字符可以匹配单词access中的字母a和e,单不能匹配字母c和s,只能匹配字符串cc和ss,如下所示。
ac?es?
a(cc)?e(ss)?
在上面的两个正则表达式中,由于问号“?”无法匹配两个或以上的字符或字符串,因此,第二个正则表达式无法与access单词匹配。
大括号“{}”元字符
使用大括号“{}”也可以匹配指定数量的字符或字符串。大括号“{}”元字符有3种使用方法。在大括号“{}”中填入一个正整数后,正整数将表示大括号之前的字符或字符串的重复次数。例如,匹配IEEE1394中出现了3次的字母E,如下所示。
IE{3}1394
在大括号“{}”中填入一个正整数和一个逗号“,”后,可以匹配最小重复次数。开发者还可以在大括号“{}”中填入两个正整数,其中第1个正整数较小,而第2个正整数较大,并在中间以逗号“,”隔开。这样表示重复的范围值。其中,较小的正整数表示最小重复次数,而较大的正整数则表示最大重复次数。例如,匹配数字10000的正则表达式还可以写为如下的格式。python正则表达式判断
10{1,4}