Home > Q&A > body text
需要把一段文本里的尖括号转义一下,但是部分HTML标签需要留下,例如<br> <p>等,怎么写一个可扩展的正则?例如目前只需要排除<br> <p>, 如果还需要多排除一个HTML标签直接在pattern上多加一组就可以?(文本比较混乱不适于用HTML解析) 网上查到一个 </?[^pP/>]+> 好像不对 或者有相应的函数或方法推荐吗?
<br> <p>
</?[^pP/>]+>
巴扎黑2017-04-10 14:57:08
preg_replace("/<((br|p)\/?)>/i","& l t;$1& g t;",$str);
怪我咯2017-04-10 14:57:08
可以使用php自带的strip_tags函数http://php.net/manual/zh/function.strip-tags.php
PHP中文网2017-04-10 14:57:08
<(?!br|p).*?> 可能是这个意思,纯正则比较麻烦,可以写程序处理