$var1 = "a<b>
b<br>
c
";
$var2 = "a<b>
b<br>
c<br>
";
如何在<br>
中的c后检测并删除$var2
?
感谢。
答案 0 :(得分:3)
$var2 = "a<b>b<br>c<br>";
$var2 = trim($var2);
if(substr($var2, -4) == "<br>")
{
$var2 = substr($var2, 0, -4);
}
echo($var2); //a<b>b<br>c
答案 1 :(得分:3)
正则表达式解决方案
preg_replace('#<br>\\s*$#', '', $var2);
它还使用字符串末尾的可选换行符和空格。
$
将正则表达式锚定到字符串的末尾。
\s
是一个空白字符(包括换行符)
*
表示0或更多
这意味着正则表达式匹配<br>
后跟字符串末尾的可选空格,preg_replace
将其替换为空字符串。
答案 2 :(得分:2)
我使用preg_replace()
删除所有换行符和br
代码(<br>
,<br/>
,<br />
等):
$str = "
a<b>
b<br>
c<br><br>
<br/><br />
<br>
";
$str = preg_replace('#(?:\s+|<br\s*/?>)+$#', '', $str);
var_dump($str);
输出:
string(28) "
a<b>
b<br>
c"