Php 用逗号替换空格和换行符
在我的preg_中,在这里替换正则表达式Php 用逗号替换空格和换行符,php,regex,Php,Regex,在我的preg_中,在这里替换正则表达式 $string = preg_replace('~[^[:alnum:],]*,[^[:alnum:]]*~', ',', $string); 我一直在尝试用逗号将单词彼此分开,这很管用,但后来我尝试了一个字符串,比如 x y z 及 为了用替换空格和换行符,所以我尝试使用[[:space:]和[[:blank:]]编写了 如何处理新的生产线?我试着用我以前的替代品/[\s,]+/替换换行符和空格,但仍然没有效果,我知道我可以进行两个类似的查询 $s
$string = preg_replace('~[^[:alnum:],]*,[^[:alnum:]]*~', ',', $string);
我一直在尝试用逗号将单词彼此分开,这很管用,但后来我尝试了一个字符串,比如
x
y
z
及
为了用替换空格和换行符,所以我尝试使用[[:space:]
和[[:blank:]]
编写了
如何处理新的生产线?我试着用我以前的替代品/[\s,]+/
替换换行符和空格,但仍然没有效果,我知道我可以进行两个类似的查询
$string = preg_replace('/[\s,]+/', ',', $string);
$string = preg_replace('~[^[:alnum:],]*,[^[:alnum:]]*~', ',', $string);
但是为了提高性能,我更喜欢将它们合并到一个RegEx
。尝试以下方法:
preg_replace("'/[^[:alnum:],]*,[^[:alnum:]]*|[\s,]+/'", ",", $string);
它将用
,
逗号替换所有空格和新行。发布$string
内容,因为您的正则表达式需要,
。您当前的字符串x y z
@WiktorStribiżew中没有逗号,现在解决了它。@WiktorStribiżew这个问题,我实际上认为
只能用于匹配两部分中的一部分(a | b)
。你真的开悟了。@WiktorStribiż取消你的权利,忘记添加替换项。但是,OP应该发布此问题中的所有相关信息。@mega6382 OP已经尝试了第二个代码。这对他们不起作用。看看他们的问题
preg_replace("'/[^[:alnum:],]*,[^[:alnum:]]*|[\s,]+/'", ",", $string);