如何使用 PHP 正则表达式去除字符串中中括号 [] 内的所有内容?
问题:
如何使用 php 正则表达式将字符串中中括号 [] 内的所有内容删除?
答案:
<?php $str = "[align=left][color=#ff00][font=微软雅黑, Tahoma, Helvetica, SimSun, sans-serif][size=5]2014九寨沟—黄河第一湾—,[/size][/font][/color][color=#ff00][font=微软雅黑, Tahoma, Helvetica, SimSun, sans-serif]两批结束回来要整理的东西太多了,第一批的照片要整理,修改,发给队员,[attach]1697[/attach]<br /> "; $pattern = '/[.*?]/'; $clean_str = preg_replace($pattern, '', $str); echo $clean_str; // 输出: 2014九寨沟—黄河第一湾—,两批结束回来要整理的东西太多了,第一批的照片要整理,修改,发给队员, ?>
解释:
- preg_replace() 函数用于使用正则表达式替换匹配的子字符串。
- 正则表达式 '/[.*?]/' 匹配方括号 [] 内的所有字符,包括换行符。
- '' 为要替换的匹配结果,因此确保它们为空。
- $clean_str 变量包含已删除中括号内容后的新字符串。