今天想处理下原先由于失误而多加的子字符如 linzimuapkapk
起初使用的是rtrim其实这个函数是trim的衍生trim是去除收尾而rtrim是去除字符末尾还有一个是去除字符头部的是ltrim
使用如下代码
[php]
$out = rtrim($inapk);
$out = rtrim($inapk);
输出的结果是linzimu那好我想那我就直接再[php] view plaincopyprint?
$out = apk
$out = apk
就是我想要的东西了
后来保险起见在上传服务器前都要检查下文件是否存在结果W多的数据有k是不存在的
找了半天终于找到原因了其实是自己没有细看PHP手册
ltrim 后面是 charlist 而不是 $substring
也就是说 后面是字符列表 不一定按照这个顺序
比如linzimuaapkapk中的a就会被去除掉
去除的原则是一直都匹配一直去除知道第一个不匹配为止
所以立马改用另一种方法可以使用
思路所可以变化下思维去除字符串可以变为替换字符串替换为NULL
使用
[php]
substr_replace($test);
substr_replace($test);
思路也可以变为将自己想要的字符串作为子字符串提取出来
[php]
$test = linapkapk;
preg_match(#^((+)\(+))\#i $test$m);
echo $m[];