解决正则表达式\w和\d的疑惑

<?php $string='April15,2003'; $pattern='/(\w+)(\d+),(\d+)/i'; $replacement='${1},${3}'; echo preg_replace($pattern,$replacement,$string); ?>

这个表达式的结果为April1,2003

原因:(\w+)能够完整匹配April15,但是因为在(\w+)后面有(\d+),为了能够匹配定义的规则,(\w+)会匹配April1,(\d+)会匹配5
可以换个表达式避免出现这种情况如:

$pattern='/([a-z])(\d+),(\d+)/i';

以上就是关于正则表达式\w和\d的疑惑全部内容,感谢大家对脚本之家的支持。

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjxpyp.html