您的位置:首页 > 编程语言 > C#

c#正则表达式

2016-03-26 22:58 323 查看
元字符解释:

. 表示除了\n以为的任意一个字符

如: 正则表达式:“a.b”可以匹配的由aab,adb,a.b…等,要求ab之间有一个字符

[] 表示字符筛选

如:正则表达式:”a[0123456789]b”表示a0b,a1b…即ab之间存在一个数字符号。”a[0123456789]b” 等价于”a[0-9]”

“a[^0-9]”表示a和b之间存在一个非数字符号,即除了0到9以为可以是任意的一个字符

| 表示或

如:正则表达式:”a|bood” 表示匹配a 或者 bood,

正则表达式:”(a|b)ood” 表示匹配aood 或 bood

() 表示改变运算的优先级,以及提取组

如一个表达式中括号分布如下“()(()())()”从做往右遇到左半括号组号加1,初始从1开始。即把上边字符串中的(替换成组号:”1)23)4))5)”,用¥1,¥2…表示,用于Regex.Replace(str,正则表达式,”分组”)

接着是 * 限定符,表示前边的表达式出现0次或多次

如 “a*” 表示匹配0个或多个连在一起的由a组成的字符串

如”a.*b” 表示a和b直接出现0到多个出\n之外的字符,如addkskb,ab,ac939ddb等

+表示前边的表达式出现一次或多次,即至少出现一次

?限定符表示前边的表达式出现0次或1次,如果用在*或者+后边表示终止贪婪模式

其它限定符

{n}表示前边的表达式出现n次

如”a{5}b”表示匹配aaaaab

{n,}表示前边的表达式至少出现n次

“a{5,}b”表示匹配aaaaaab, aaaaaaaaaab,aaaaab即至少5个a一个b

{n,m}表示前边的表达式至少出现n次,最多m次

接着是^表示字符串的开头的特征,&表示字符串的结尾的特征

如:”^aaaa.*” 表示以aaaa开头的内容

如:”[0-9]+data&”表示匹配以data结尾,前边由1到多个由数字组成的字符串

\d 等价[0-9]

\D等价[^0-9]

\s表示任意的不可见字符 如空格、tab等

\S表示除了\s意外的任意字符

\w 等价于[0-9a-zA-Z]

\W表示除了\w意外的任意字符

如表示任意的单个字符出现在ab之间

a[\d\D]b

a[\w\W]b

a[\s\S]b
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: