正则表达式-常见正则表达式符号和特殊字符

表 1-1 常见正则表达式符号和特殊字符

表 示 法 	描 述 	正则表达式示例
符号		
literal 	匹配文本字符串的字面值 literal 	foo
re1|re2 	匹配正则表达式 re1 或者 re2 	foo|bar
. 	匹配任何字符(除了\n 之外) 	b.b
^ 	匹配字符串起始部分 	^Dear
$ 	匹配字符串终止部分 	/bin/*sh$
* 	匹配 0 次或者多次前面出现的正则表达式 	[A-Za-z0-9]*
+ 	匹配 1 次或者多次前面出现的正则表达式 	[a-z]+\.com
? 	匹配 0 次或者 1 次前面出现的正则表达式 	goo?
{N} 	匹配 N 次前面出现的正则表达式 	[0-9]{3}
{M,N} 	匹配 M~N 次前面出现的正则表达式 	[0-9]{5,9}
[…] 	匹配来自字符集的任意单一字符 	[aeiou]
[..x-y..] 	匹配 x~y 范围中的任意单一字符 	[0-9], [A-Za-z]
[^…] 	不匹配此字符集中出现的任何一个字符,包括某一范围的字符(如果在此字符集中出现) 	[^aeiou], [^A-Za-z0-9]
(*|+|?|{})? 	用于匹配上面频繁出现/重复出现符号的非贪婪版本(*、 +、 ?、 {}) 	.*?[a-z]
(…) 	匹配封闭的正则表达式,然后另存为子组 	([0-9]{3})?,f(oo|u)bar
\d 	匹配任何十进制数字,与[0-9]一致( \D 与\d 相反,不匹配任何非数值型的数字) 	data\d+.txt
\w 	匹配任何字母数字字符,与[A-Za-z0-9_]相同( \W 与之相反) 	[A-Za-z_]\w+
\s 	匹配任何空格字符,与[\n\t\r\v\f]相同( \S 与之相反) 	of\sthe
\b 	匹配任何单词边界( \B 与之相反) 	\bThe\b
\N 	匹配已保存的子组 N(参见上面的(…)) 	price: \16
\c 	逐字匹配任何特殊字符 c(即,仅按照字面意义匹配,不匹配特殊含义) 	\., \\, \*
\A(\Z) 	匹配字符串的起始(结束)( 另见上面介绍的^和$) 	\ADear
扩展表示法		
表 示 法 	描 述 	正则表达式示例
(?iLmsux) 	在正则表达式中嵌入一个或者多个特殊“ 标记” 参数(或者通过函数/方法) 	( ?x),(? im)
(?:…) 	表示一个匹配不用保存的分组 	(?:\w+\.)*
(?P<name>…) 	像一个仅由 name 标识而不是数字 ID 标识的正则分组匹配 	(?P<data>)
(?P=name) 	在同一字符串中匹配由(?P<name)分组的之前文本 	(?P=data)
(?#…) 	表示注释,所有内容都被忽略 	(?#comment)
(?=…) 	匹配条件是如果…出现在之后的位置,而不使用输入字符串;称作正向前视断言 	(?=.com)
(?!…) 	匹配条件是如果…不出现在之后的位置,而不使用输入字符串;称作负向前视断言 	(?!.net)
(?<=…) 	匹配条件是如果…出现在之前的位置,而不使用输入字符串;称作正向后视断言 	(?<=800-)
(?<!…) 	匹配条件是如果…不出现在之前的位置,而不使用输入字符串;称作负向后视断言 	(?<!192\.168\.)
(?(id/name)Y|N ) 	如果分组所提供的 id 或者 name(名称)存在,就返回正则表达式的条件匹配 Y,如
果不存在,就返回 N; |N 是可选项	(?(1)y|x)

  • 3
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值