2015-02-10 74 views
0

我有不同的语言在网页200这种情况下,所有这个结尾格式。str_replace用于动态字符串内容?

<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的alert内部动态多语言内容,我不能直接使用str_replace函数,必须做一些通配符类的映射....

任何想法如何解决这个难题?

回答

0

阅读了关于preg_replace

例如,

$pattern = '/<script>alert[^<]*<\/script>\s*<\/body>\s*$/'; 
$cleanedBody = preg_replace($pattern, '</body>', $body); 
+0

如果内容不配合怎么结束?这条路? $ contents = preg_replace('/

0

你可以尝试使用正则表达式和的preg_replace

$pat = '/<script>alert\(("\** [\p{L}]* \** [^)]*)\);<\/script>/u'; 
$nestr = preg_replace($pat, '</body>', $html); 

你可以看到正则表达式的工作here