即
$text = 'remove this text (keep this text and 123)';
echo preg_replace('', '', $text);
Run Code Online (Sandbox Code Playgroud)
它应该输出:
(keep this text and 123)
Run Code Online (Sandbox Code Playgroud)
这样做:(并且也适用于嵌套())
$re = '/[^()]*+(\((?:[^()]++|(?1))*\))[^()]*+/';
$text = preg_replace($re, '$1', $text);
Run Code Online (Sandbox Code Playgroud)
以下是几个测试用例:
Input:
Non-nested case: 'remove1 (keep1) remove2 (keep2) remove3'
Nested case: 'remove1 ((keep1) keep2 (keep3)) remove2'
Output:
Non-nested case: '(keep1)(keep2)'
Nested case: '(keep1) keep2 (keep3)'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2330 次 |
| 最近记录: |