首頁 >後端開發 >PHP問題 >php怎麼刪除指定字元間的字串

php怎麼刪除指定字元間的字串

藏色散人
藏色散人原創
2021-09-22 09:18:242345瀏覽

php刪除指定字元間的字串的方法:1、建立PHP範例檔案;2、輸入程式碼「public function getStr(){...}」;3、透過getStr方法刪除字串中指定兩段字元中間的的字元即可。

php怎麼刪除指定字元間的字串

本文操作環境:windows7系統、PHP7.1版、Dell G3電腦。

php怎麼刪除指定字元間的字串?

PHP刪除字串中指定兩段字元中間的的字元

做專案中遇到的問題,需要刪除字串中指定兩段字元中間的的字元。

public function getStr()
    {
        //str是一串有规则的字符串,现在我想删除其中一段,代码如下
        $str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
        //获取开始位置,选择 ,2,(防止和时间的年份冲突)
        $i1=strpos($str,',2,');//开始位置
        $i2=strpos($str,',',$i1+3);//结束位置
        $str1=substr($str,0,$i1) . substr($str,$i2,strlen($str));
        echo $str."<br>".$str1;//换行输出,对比结果
        //输出结果 
        //1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
        //1,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
        //OK,完美。
    }

簡單地包裝一下(感覺包裝後反倒麻煩了),但還是記錄一下吧

public function getStr($str,$str1,$n1,$str2,$n2)
    {
        /**
         * $str为要处理的字符串
         * $str1为选中的唯一字符串
         * $n1为从$str中第几个字符串开始截取
         * $str2为选中的唯一字符串
         * $n2为从$str2中第几个字符串结束截取
         */
        $i1=strpos($str,$str1)+$n1;
        $i2=strpos($str,$str2,$i1)+$n2;
        $str1=substr($str,0,$i1-1) . substr($str,$i2,strlen($str));
        return $str1;
    }

 舉個栗子,用封裝方法就做如下

//对应的五个值如下 
$str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
$str1=",2,";
$n1="2";            //从指定值中的2 开始截取
$str2=",";
$n2="1";            //截取到指定值中的第一位,也就是,
echo(getStr($str,$str1,$n1,$str2,$n2));    //嗯,结果也一样,就是感觉没弄好,也不简单哈

PS:遇到了,小計一下

推薦學習:《PHP影片教學

以上是php怎麼刪除指定字元間的字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn