regex 在php中从字符串中替换br标签

20jt8wwn  于 2023-10-22  发布在  PHP
关注(0)|答案(5)|浏览(104)

我有以下字符串。我想用/n替换换行符

Good FRIENDS are hard to find,<br
            /> harder to leave,<br
            /> and impossible to forget.
byqmnocz

byqmnocz1#

preg_replace("/<br\W*?\/?>/", "\n", $string);
hwazgwia

hwazgwia2#

你试过str_replace吗?

str_replace("<br />", "\n", $your_string);
eufgjt7s

eufgjt7s3#

使用str_replace

$text = str_replace("<br />", "\n", $text);

如果在<br />标记中确实有一个换行符,如示例代码中所示,请尝试以下操作:

$text = preg_replace("/<br\n\W*\/>/", "\n", $text);
wgxvkvu9

wgxvkvu94#

使用此功能

function separate( $str,$subStr, $count )
  {
     $formatStr = '';
     $start=0;
     $num = 1;
     while(!(strpos($str,$subStr,$start) === null))
     { 
       $first = strpos($str,$subStr,$start);
       if ($first < $start)
          break; 
       $newStr = substr($str,$start,$first - $start + 1 );
       $formatStr .= $newStr;
       if ($num % $count == 0)
          $formatStr .= '<br>';
       $num ++;
       $start = $first +1;
     }
     return $formatStr;
  }

例如

$str = 'AAA.BBB.CCC.DDD.EEE.FFF.CCC';
echo separate ($str,'.', 3);

输出

AAA.BBB.CCC.
DDD.EEE.FFF.
kognpnkq

kognpnkq5#

你也可以试试下面的正则表达式:

$string = preg_replace( '@^(<br\\b[^>]*/?>)+@i', '', $string );

相关问题