我知道在想要将<br>
标记转换为新行时,我可以做一个简单的替换。但是我遇到了解析问题,因为提供的<br>
标签不是空的。
<br style=\"color: rgb(83, 83, 83); font-family: \" helvetica=\"\" ...
后端不是我的,所以在这里讨论好的或坏的编码没有意义,我只是想知道是否有一个解决方案来替换那些简单的新线路。
像nl2br()
之类的东西,但反过来。
修改
当我知道'为什么'是我尝试过的东西时,不知道有什么用途来显示代码......但是这里有
public function removeSingleHtmlFormatting($single)
{
$single->short_description = str_replace("<br>", "\r\n", $single->short_description);
$single->short_description = strip_tags($single->description);
$single->short_description = preg_replace("/ /", " ", $single->short_description);
}
当然替换不起作用,因为没有这样的字符串可以替换......我不知道从哪里开始解析它
答案 0 :(得分:1)
而不是
str_replace("<br>", "\r\n", $single->short_description);
试
preg_replace("/<br.*>/U", "\r\n", $single->short_description);
这样,正则表达式与<br>
匹配,包括其中的任何内容,而不仅仅是空<br>
。