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