[英]replacing characters in a string in php
我想不出一個好的標題,但我的問題是我必須替換字符串中的某些字符,但又不想替換已經替換的字符,例如,
$s = "abcabacababbccc";
如果我不得不更換abc
與bcc
和bc
與aa
那么我應該得到
$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 Baker),但似乎沒有人熱衷於實際發布“答案”,因此:
$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.