我正在尝试从括号中删除换行符。
lorum (ip
sum) dolor
所以输出将是
lorum (ipsum) dolor
我可以使用下面的正则表达式模式在括号内选择文本,但不能删除换行符。
\((.*?)\)
我尝试过\(([\n\r]*?)\)
但没有运气。
您可以在正则表达式下面使用:
(.*\(.*?)(?:\n)(.*?\).*)
演示:https://regex101.com/r/8XWPrW/4/
测试字符串:
lorum (ip
sum) dolor
lorum ip
sum dolor
替换后:
lorum (ipsum) dolor
lorum ip
sum dolor
另外,根据需要,它将仅在括号内时检测到新行
-编辑-
如评论中所述,它也可以正常工作preg_replace
。只是需要提及的团体
PHP代码:
$data="lorum (ip
sum) dolor
lorum ip
sum dolor";
echo preg_replace("'(.*?\(.*?)(?:\n)(.*?\).*)'", "$1$2", $data);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句