转 正则,元字符判定和元字符排除混用时,字符串长度判断问题
'/[^\W]\w{3,10}[^\W]/' 这个模式就判断不到" bags "
比如在php的preg match中,使用这样的模式判断
'/[^\W]\w{3,10}[^\W]/' 这个模式就判断不到" bags " 实测结论是这种判定和排除混用的情况,判定字符的边际字符,是要被算进排除字符里进行匹配的,这可能是准确匹配算法所必须要用的,因此以上模式只能判定到字符串里的 ag ,两边的” b“,"s "是判定不到的,这样判定的部分长度就变成了2,小于{3,10}的范围,匹配结果就不是返回bags,而是返回空数组。改成{2,10}问题就解决了。...
浏览更多内容请先登录。
立即注册
更新于:2020-04-11 14:00:40
相关内容
PHP正则表达式,看这一篇就够啦!
PHP正则表达式提示Warning: preg_match(): Delimiter must not be alpha...
PHP正则匹配中文汉字和中文字符(亲测有效)
(PHP)正则表达式-忽略大小写,
推荐内容