我使用多个在线表达式测试工具
都如上图所示 可以匹配到我设想的结果
下面是正则部分
[^\u4e00-\u9fa5]?[\u4e00-\u9fa5]+(\s?|\s+)(http)?[^@\s\u4e00-\u9fa5]+\.[^\s\u4e00-\u9fa5]+
但是放到php当中执行
同样的文本 却匹配不到任何文本 如下图
代码部分:
执行结果:
非常费解,也换了几个模式修饰符测试,也是毫无结果
超出了自己的理解范围能力
前来求教
我使用的环境是win10 ltsc 1803
php版本为
PHP 7.4.4 (cli) (built: Mar 17 2020 13:49:13) ( NTS Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Xdebug v2.9.3, Copyright (c) 2002-2020, by Derick Rethans
自问自答一下
问题出在
php不支持常见的中文正则表达式
必须使用 如下部分
注意 后边的/u 同样重要