
PHP字符串处理:高效去除特定长度子串
本文介绍一种高效方法,从逗号分隔的字符串中移除长度小于等于2或大于等于4的子串。 原始字符串例如:"1,22,333,啊,啊啊,啊啊啊,4444",目标结果为:"22,啊啊"。
最初的代码尝试使用自定义函数count_strlen计算字符串长度,但存在逻辑错误且效率低下。 更优的方案是直接利用PHP内置的mb_strlen函数,它能正确处理多字节字符(例如中文)。
以下为改进后的代码:
2 && $len < 4;
});
$finalResult = implode(',', $result);
echo $finalResult; // 输出: 22,啊啊
?>
这段代码首先使用explode函数将字符串分割成数组。然后,array_filter函数结合匿名函数筛选出长度大于2且小于4的子串。最后,implode函数将筛选后的数组重新组合成逗号分隔的字符串。 mb_strlen函数确保了对多字节字符的正确长度计算,提高了代码的可靠性和效率。 此方法简洁明了,性能优于使用自定义函数的原始方法。
立即学习“PHP免费学习笔记(深入)”;











