Php 将多个正则表达式合并为一个以删除逗号
Php 将多个正则表达式合并为一个以删除逗号,php,regex,Php,Regex,$reg1=preg_replace('/(?您可以将这三个参数传递给preg_replace: $patterns = array('/(?<!\d),(?=\s+\d)/', '/,\s*$/', '/\s\s+/'); $replacements = array('', '', ' '); $result = preg_replace($patterns, $replacements, $text); $patterns=array('/(?前两个可以像这样组合: $reg1 =
$reg1=preg_replace('/(?您可以将这三个参数传递给preg_replace
:
$patterns = array('/(?<!\d),(?=\s+\d)/', '/,\s*$/', '/\s\s+/');
$replacements = array('', '', ' ');
$result = preg_replace($patterns, $replacements, $text);
$patterns=array('/(?前两个可以像这样组合:
$reg1 = preg_replace('/(?<!\d),\s*(?=\d|$)/', '', $text);
$reg1=preg_replace('/(?由于替换值不同,您只能将前两个正则表达式分组为“或”条件。preg_replace
还允许多次替换,因此您可以将第三个正则表达式作为单独的参数传递
$result = preg_replace(array('/((?<!\d),(?=\s+\d))|(,\s*$)/', '(\s\s+)'), array('', ' '), $text);
$result=preg_replace(array)('/(?请添加一些示例输入字符串和预期结果。出于某种原因,是否需要将它们组合起来?性能是否受到影响?为了简化第二个正则表达式,您可以尝试使用rtrim($reg1,,);
。我不能很好地读取正则表达式,但第三个正则表达式可以使用trim($reg2)如果一个字符串看起来像这样,一个令人惊讶的字符串会把你的第十天搞得一团糟,你需要怎么做?'hulk,33',=>'hulk 33'
'test 3',=>'test 3'