PHP字符串处理之切分与组合&应用(多语言逐字拆分)
本文完整阅读约需 6 分钟,如时间较长请考虑收藏后慢慢阅读~
代码:
输出结果见链接:http://static.lurenjia.in/5-7.php
<?php
//给出待处理字符串
$engString = "This is a sentence";
$chnString = "这是一个中文句子";
$chnString_delSpaces = "这个中 文句子 被空格 夹 杂";
//定义所需变量
$engString_output = "";
$chnString_delSpaces_output = "";
//explode函数将满足条件(delimiter)的字符串作为切分器切分字符串为数组
$engString_Sub = explode(" ", $engString);
print_r($engString_Sub); //print_r能够打印出数组内容
echo "<br />";
//应用:遍历数组,组合为一个没有空格的句子
foreach ($engString_Sub as $item) {
$engString_output = $engString_output.$item;
}
echo $engString_output;
echo "<br />";
//中文情况特殊,不能使用explode函数,只能逐字拆分,使用正则表达式可以简单解决
//该正则表达式可以拆分任何语言(因为使用的是UTF-8编码)
preg_match_all("/./u",$chnString,$chnString_Sub); //正则表达式的强大之处一览无遗
print_r($chnString_Sub);
echo "<br />";
//实战:去除汉字中的空格
echo $chnString_delSpaces;
echo "<br />";
$chnString_delSpaces_Sub = explode(" ", $chnString_delSpaces);
foreach ($chnString_delSpaces_Sub as $item) {
$chnString_delSpaces_output = $chnString_delSpaces_output.$item;
}
echo $chnString_delSpaces_output;
echo "<br />";
//使用implode进行字符串的组合
echo implode(" ", $engString_Sub);
echo "<br />";
$chnString_Sub_imploded = implode("·", $chnString_Sub[0]);
//print_r($chnString_delSpaces_Sub);
?>