我正在尝试结合 2 个正则表达式。
$test = preg_replace('/\[.*?\]/', '', $test);
我用它来删除括号之间的任何方括号和单词..
$test = preg_replace ('/[\[\]=]+/', '', $test);
我用它从我的字符串中删除任何 = [ ] 符号。
单独这样做似乎很好,但我想将它们结合起来。任何想法我怎么能做到这一点..我尝试过的一切都打破了..
谢谢
最简单的答案是使用或:
'/\[[^\]]*\]|[\[\]=]+/'
请注意,我还更改了第一个字符串中的内部模式。我不确定那里是否需要反斜杠。
使用交替:
$test = preg_replace('/\[.*?\]|[\[\]=]/', '', $test);
排序在这里很重要,因此首先匹配的括号及其内容被删除。只要没有嵌套括号,这应该可以正常工作。
因此,此表达式将匹配\[.*?\]
OR [\[\]=]