由于某些原因,我不想在我的其他标签内使用<br>
标签。例如,如果我有
<b>This is a line<br>another line?</b>
<i>testing 1<br>testing 2</i>
我希望将其转换为
<b>This is a line</b><br><b>another line?</b>
<i>testing 1</i><br><i>testing 2</i>
我知道它们在浏览器中显示相同。但是出于某些其他原因,我需要使用这种格式的代码。我正在使用php。谢谢你的帮助。
答案 0 :(得分:1)
此表达式捕获三个组,其中第一个是标签名称,其次是内容,传递<br>
,然后滑动其余行:
<(.*)>(.*)<br>(.*)
然后,我们可以进行替换。
如果这不是您想要的表达式,则可以在regex101.com中修改/更改表达式。
您还可以在jex.im中可视化您的表达式:
const regex = /<(.*)>(.*)<br>(.*)/gm;
const str = `<b>This is a line<br>another line?</b>
<i>testing 1<br>testing 2</i>`;
const subst = `\n<$1>$2</$1><br><$1>$3`;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
$re = '/<(.*)>(.*)<br>(.*)/m';
$str = '<b>This is a line<br>another line?</b>';
$subst = '<$1>$2</$1><br><$1>$3';
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is " . $result;