php正则表达式或| 操作者

bry*_*mon 9 php regex

我正在做一个preg_replace:

$pattern = '/<ul>/';
$replacement = "";
$string = "hello <ul> how are you doing </ul>";
echo preg_replace($pattern, $replacement, $string);
Run Code Online (Sandbox Code Playgroud)

这将取代我的<ul>,""但我喜欢替换任何东西,<ul>或者</ul>,我不知道如何使用|(或)字符.

我尝试这样,但它不能正常工作:

$pattern = '/<ul>|</ul>/';
$replacement = "";
$string = "hello <ul> how are you doing </ul>";
echo preg_replace($pattern, $replacement, $string);
Run Code Online (Sandbox Code Playgroud)

任何帮助肯定会受到赞赏

谢谢,布莱恩

Sat*_*tya 17

您可能需要像这样转义/ ul中的斜杠:

$pattern = '/<ul>|<\/ul>/';
Run Code Online (Sandbox Code Playgroud)

或者这样做,不确定它是否有效:

$pattern = '/<\/?ul>/';
Run Code Online (Sandbox Code Playgroud)

('?'表示零个或前一个字符之一,在这种情况下为'/'.)

  • 另一个选择是使用不同的正则表达式分隔符:`'〜</?ul>〜'` (5认同)