正则表达式删除所有大于和小于但不是“br”之间

时间:2016-03-02 23:32:08

标签: regex

我想删除所有大于和小于符号。我不想删除这些符号之间的内容,我不想删除br标签。有没有办法做到这一点?请记住,我不知道如何使用正则表达式。

这是我到目前为止所做的:

/[<>](?!b)/g

如果我在这上面使用正则表达式:

< >"' <<< <   <  <br> <aaa > >

然后我明白了:

 "'       <br aaa  

但我想要这个:

 "'       <br> aaa  

请帮忙! (ノ'ロ`)ノ

编辑:(显示答案并使用) 用于打印php“对象”内容以进行故障排除等的功能

function myPrint($myPrint, $returnAsString = FALSE){
    if($myPrint === FALSE){ $myPrint = "FALSE"; }
    if($myPrint === TRUE){ $myPrint = "TRUE"; }
    if($returnAsString === TRUE){
        return preg_replace(array("/\s/", "/<(?!br>)/", "/(?<!<br)>/"), array("&nbsp;","&#60;","&#62;"), nl2br(print_r($myPrint, true),false));
    }
    else{
        echo preg_replace(array("/\s/", "/<(?!br>)/", "/(?<!<br)>/"), array("&nbsp;","&#60;","&#62;"), nl2br(print_r($myPrint, true),false))."<br>";
        return;
    }
}

1 个答案:

答案 0 :(得分:1)

通常可以通过几个断言轻松完成。

<(?!br>)|(?<!<br)>

扩展

   <
   (?! br> )
|  
   (?<! <br )
   >