首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP Preg_replace不能与<br>和新行一起使用

PHP Preg_replace不能与<br>和新行一起使用
EN

Stack Overflow用户
提问于 2019-09-10 09:07:33
回答 2查看 291关注 0票数 0

我有一个Json文件,在一些行中包含html内容,但是每次我尝试使用preg_replace来匹配这个换行符和换行符的组合时,它都不起作用。

例如,<br> No atraviesa el papel

想要替换为:<br>No atraviesa el papel

已尝试:

代码语言:javascript
复制
$pattern = '/<br>\n/m';
$subs = '<br>';
$json_response = preg_replace($pattern, $subs, $json_response);

我希望删除换行符,只保留<br>

EN

回答 2

Stack Overflow用户

发布于 2019-09-10 09:34:40

你需要从积极的前瞻开始。

然后将匹配替换为空字符串。

代码语言:javascript
复制
/(?<=<br>)\s*\R/

Demo on regex101

  • 编辑:在@ user3783243

的帮助下,在<br>

  • edit:使其更简洁和通用之后,添加了对空白的匹配
票数 0
EN

Stack Overflow用户

发布于 2019-09-10 11:12:40

这是你要找的东西吗?

代码语言:javascript
复制
<?php

$json_response="<br>
No atraviesa el papel
";

$tobe = "<br>No atraviesa el papel
";

$pattern = '/<br>([\r\n]+)/is';
$subs = "<br>";
$json_response = preg_replace($pattern, $subs, $json_response);

echo $json_response;
echo "\r\n", $json_response==$tobe?"Matched":"Did not match";

它输出:匹配。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57862817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档