php如何去除最后一个匹配字符
2个回答
展开全部
第一种,直接使用strrpos,substr实现
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$str="hello,how are you!";//要处理的字符串
$lastchar="o";//最后一个字符
$pos=strrpos($str,$lastchar);//确定最后一个字符的位置
$str=substr($str,0,$pos).substr($str,$pos+strlen($lastchar));//截取并合并字符串
echo $str;
?>
第二种,使用explode,将匹配的字符作为分隔符,分隔成数组,之后重新合并数组,过滤掉匹配的最后一个字符即可。
代码如下:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$str="hello,how are you!";
$lastchar="o";
$ary=explode($lastchar,$str);
for($i=0;$i<count($ary);$i++)
{
if($i<(count($ary)-2))
{
$res.=$ary[$i].$lastchar;
}
else
{
$res.=$ary[$i];
}
}
echo "<div>最终结果:".$res."</div>";
?>
希望对你有帮助。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$str="hello,how are you!";//要处理的字符串
$lastchar="o";//最后一个字符
$pos=strrpos($str,$lastchar);//确定最后一个字符的位置
$str=substr($str,0,$pos).substr($str,$pos+strlen($lastchar));//截取并合并字符串
echo $str;
?>
第二种,使用explode,将匹配的字符作为分隔符,分隔成数组,之后重新合并数组,过滤掉匹配的最后一个字符即可。
代码如下:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$str="hello,how are you!";
$lastchar="o";
$ary=explode($lastchar,$str);
for($i=0;$i<count($ary);$i++)
{
if($i<(count($ary)-2))
{
$res.=$ary[$i].$lastchar;
}
else
{
$res.=$ary[$i];
}
}
echo "<div>最终结果:".$res."</div>";
?>
希望对你有帮助。
展开全部
substr($arr_str, 0, -1),
rtrim($arr_str, ",")
<?php
$hello="a|b|c|";
$hello=preg_replace("@|$@","",$hello);
echo $hello."<br>";
$str="abcd";
preg_match_all("@$hello@",$str,$result);
print_r($result);
?>
希望可以采纳,谢谢。
rtrim($arr_str, ",")
<?php
$hello="a|b|c|";
$hello=preg_replace("@|$@","",$hello);
echo $hello."<br>";
$str="abcd";
preg_match_all("@$hello@",$str,$result);
print_r($result);
?>
希望可以采纳,谢谢。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询