PHP regular expression replace?(PHP正则表达式要替换吗?)
问题描述
我要在字符串中用逗号分隔字母数字(带空格)和非字母数字。
我试过这个.
$str = "This is !@#$%^&";
preg_replace("/([a-z0-9_s])([^a-z0-9_])/i", "$1, $2", $str);
但是我得到了这个结果.
这是!@#$%^&;
如何修复搜索模式才能获得此结果?
这是!@#$%^&;
谢谢。
推荐答案
您应该为第二个组否定第一个组中的所有内容,如下所示:
preg_replace("/([a-z0-9_s])([^a-z0-9_s])/i", "$1, $2", $str);
否则,它也会在空格上拆分。
这篇关于PHP正则表达式要替换吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!