-2

我似乎找不到一个正则表达式来执行以下操作。

我需要替换(空格), 但前提是它在括号内。

例如

hello test('test some more') ; 

需要是

hello test('test some more') ; 

任何帮助都会很棒:)

4

1 回答 1

1

好吧,从技术上讲,这可以用正则表达式完成:

$str = "hello test('test some more again') dads dasds ('and some more');";

$str = preg_replace('#(?<=\()([^)]+?) | (?=[^()]*\))#', '$1&nbsp;', $str);
var_dump($str);

换句话说,我们在这里替换一个空格,该空格前面是(,但不是(...),或者后面是),但是,再次,不是(...)

但是,问题是您是否应该对嵌套括号采取预防措施。

于 2012-09-19T15:06:52.590 回答