方法: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中文網其他相關文章!