正则表达式符号详细汇总

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

正则表达式能便捷处理文本数据,降低字符类型原生api的繁琐调用,起初对于电话号码乃至文本替换总是会想到采用“成熟”的方案“借鉴”过来解决,编程其根本还是需要了解其底层核心逻辑,这里对正则表达式所涉及到的表达符号做汇总记录

符号描述表达式例子校验内容例子结果
.匹配一个字符且仅限一个字符a.cabc共 1 个匹配项
\d匹配任意个数字\d123464共 6 个匹配项
\w匹配一个字母、数字或下划线,w的意思是word(不能匹配#、空格等字符)\wgddgfdh共 7 个匹配项
\s可以匹配一个空格字符,空格字符不但包括空格,还包括tab字符a\sca c共 1 个匹配项
\D匹配一个非数字00\D007没有匹配结果
\W匹配\w不能匹配的字符
\S匹配\s不能匹配的字符
*匹配任意个字符,包括0个字符A\d*A380共 1 个匹配项
+匹配至少一个字符A\d+A380共 1 个匹配项
?匹配0个或一个字符A\d?A共 1 个匹配项
{n}精确匹配n个字符A\d{3}A380
{n,m}精确匹配n~m个字符A\d{3,5}A38000共 1 个匹配项
^表示开头^A\d{3}A3800000000共 1 个匹配项
$表示结尾^A\d{3}$A3800000000没有匹配结果
[...]匹配指定的范围
1-9[1-9]
a-f[a-f]
A-F[A-F]
排除法:即不包含指定范围的字符用^表示
[^1-9]{3}
[123456789]\d{6,7}1234567共 1 个匹配项
或规则匹配
可以提取公共部分后采用括号包裹的方式匹配
`learn\s(java
phpgo)learn javalearn php`AB丨CD
(...)分组匹配
例:区号-电话号匹配规则^(\+\d{2})-(\d{11})$,括号分组
^(\+\d{2})-(\d{11})$+86-18000000000共 1 个匹配项
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值