簡體   English   中英

在PHP中替換字符串中的字符

[英]replacing characters in a string in php

我想不出一個好的標題,但我的問題是我必須替換字符串中的某些字符,但又不想替換已經替換的字符,例如,

 $s = "abcabacababbccc";

如果我不得不更換abcbccbcaa那么我應該得到

 $s = "bccabacababaac";

但是我得到了不同的字符串作為輸出,因為然后調用了另一個替換函數,它從頭開始搜索字符串,因此我應該避免使用它。 如果有人可以幫助我進行整理,我已經編寫了此代碼。 謝謝

$_set = "abcacbabccbacab";
    $_set = InvokeRule1($_set);
    $_set = InvokeRule2($_set);
    $_set = InvokeRule3($_set);

function InvokeRule1($set)
{
    $check = false;
        $set = str_replace("abc", "bcc", $set);
        $check = true;

    return $set;
}

 function InvokeRule2($set)
{
    $check = false;
        $set = str_replace("bc", "aa", $set);
        $check = true;
    return $set;
}

歸功於馬克·貝克(Mark Ba​​ker),但似乎沒有人熱衷於實際發布“答案”,因此:

$trans = array("abc" => "bcc", "bc" => "aa");
echo strtr("abcabacababbccc", $trans); //=bccabacababaacc

嘗試這樣的事情:

$phrase  = "abcabacababbccc";
$newPhrase = str_replace("abc", "BCC", $phrase);
$newPhrase2 = str_replace("bc", "AA", $newPhrase);
echo strtolower($newPhrase2);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM