我有200个不同语言的网页场景,所有这些都有这种结束格式。
<script>alert("***** ATENCIÓN ***** \n\n Es posible .");</script>
</body>
<script>alert("***** ATTENTION ***** \n\n Click now .");</script>
</body>
我想动态替换
<script>alert("***** ATENCIÓN ***** \n\n Es posible .");</script>
</body>
仅成为</body>
。
<script>alert("***** ATTENTION ***** \n\n Click now .");</script>
</body>
仅成为</body>
。
常见模式是
<script>alert(" ");</script>
</body>
由于javascript警报里面有动态多语言内容,我不能直接使用str_replace,不得不做一些通配符的映射....
任何想法如何解决这个难题?
答案 0 :(得分:0)
阅读preg_replace。
,例如,
$pattern = '/<script>alert[^<]*<\/script>\s*<\/body>\s*$/';
$cleanedBody = preg_replace($pattern, '</body>', $body);
答案 1 :(得分:0)
您可以尝试使用regex和preg_replace
$pat = '/<script>alert\(("\** [\p{L}]* \** [^)]*)\);<\/script>/u';
$nestr = preg_replace($pat, '</body>', $html);
您可以看到正则表达式here