(?<=\s)\d+(?=\s)\b\d+\b这两个表达式有什么区别?都是匹配两边是空字符的一串连续的数字的啊,只不过第一个用了零宽断言
4 回答
kumin
TA贡献38条经验 获得超104个赞
上下俩个表达式效果是一样滴
上面利用的是零宽断言 匹配空白符之间的内容
下面利用的是\b 是定位单词的开始和结束位置
所以效果是一样的
你有疑惑可能是对\b 和\s 有点混淆
\b是找到位置 不匹配东西
\s是匹配空白符
举个栗子: \babc\b 可以匹配到 "abc"
但\sabc\s 只能匹配到 " abc " 前后必须有空白符的
以上
添加回答
举报
0/150
提交
取消