我正在尝试确定是否可以使用 preg_replace 执行以下操作,如果可以,您可以向我展示一个带有注释的示例,以便我从中学习。
我有一些看起来像这样的 html 代码:
<ul class="sub-menu">
<li id="menu-item-99" class="menu-item"><a href="/clients-login-english/">Login**</a></li>
<li id="menu-item-100" class="menu-item"><a href="/clients-create-account-english/">Create Account%%</a></li>
</ul>
我想要做的是找到“代码”的位置,在这种情况下是“* *”或“%%”,并删除从前面的 < li 开始并以下一个 < /li > 结束的文本。因此,如果我对此使用 preg_replace 并正在寻找“**”,它最终会看起来像:
<ul class="sub-menu">
<li id="menu-item-100" class="menu-item"><a href="/clients-create-account-english/">Create Account%%</a></li>
</ul>
我最初的想法是使用蛮力方法并使用stripos找到“**”,然后从那里向后循环找到<li,然后在它之后寻找</li>并重建字符串减去这部分但是似乎必须有一个更简单的方法。