方法:1、使用“implode("",array_unique(str_split(字符串, 1)));”去除相同字符串;2、使用“implode("",array_unique(preg_split(正则式,字符串)))”去除相同字符串。
推荐:《PHP视频教程》
php去除相同字符串的方法:
1、如果字符串中无汉字,都是ASCII字符那非常简单:
<?php $str = 'aabbcc11333332.axyz'; echo implode("",array_unique(str_split($str, 1))); //输出 abc132.xyz
2、如果字符串中有汉字,而且编码为UTF8,可以用下面方法:
<?php $str="爱爱E爱EE族族"; $arr = preg_split("/(?<!^)(?!$)/u", $str); //转换成数组 $arr = array_unique($arr); //除去重复字符 echo implode("", $arr); //还原成字符串 //输出: 爱E族
3、如果字符串中有汉字,而且编码不为UTF8,可以用下面方法(可以指定编码):
<?php //按长度分割含中文字符串的自定义函数 function mb_str_split($str, $length=1, $encoding='UTF-8') { $arr = array(); for($i=0; $i<mb_strlen($str, $encoding); $i+=$length) { $arr[] = mb_substr($str, $i, $length, $encoding); } return $arr; } $arr = mb_str_split("爱爱爱E族族", 1, 'GBK'); $arr = array_unique($arr); //除去重复字符 echo implode("", $arr); //还原成字符串 //输出: 爱E族
以上是php如何去除相同字符串的详细内容。更多信息请关注PHP中文网其他相关文章!