我似乎找不到正则表达式来执行以下操作。
我需要将(空格)替换为
,但前提是它在括号内。
E.g。
hello test('test some more') ;
需要
hello test('test some more') ;
任何帮助都会很棒:)
答案 0 :(得分:1)
嗯,技术上可以用正则表达式完成:
$str = "hello test('test some more again') dads dasds ('and some more');";
$str = preg_replace('#(?<=\()([^)]+?) | (?=[^()]*\))#', '$1 ', $str);
var_dump($str);
换句话说,我们在这里替换一个前面有(
但不是(...)
的空格,或者后跟)
的空格,但是,再次,不是(...)
但问题是,您是否应采取嵌套括号的预防措施。