我有这个正则表达式:
$buffer = preg_replace("/'([a-zA-Z0-9]+)'/iU",'$1',$buffer);
当引号之间没有空格时,它会删除单引号。 我也替换了一个html标签。我不希望它这样做。
这是一个例子
<div id="Foo"></div>
应该是:
<div id=Foo></div>
和
<script>Foo='Bar'</script>
不应该改变因此:
<script>Foo='Bar'</script>
答案 0 :(得分:5)
HTML is unpredictable, and cannot be accurately handled with regular expressions.除非您创建了HTML并且可以非常非常确定其格式,否则请使用HTML解析器。即使你可以,HTML解析器也可能更容易使用,无论如何。
抱歉:/