2013-11-01 23 views
0

我知道如何找到(部分)字符串並更改它,但問題是,我必須更改的部分長度和字符都是可變的。找到字符串之間的部分並將其更改爲

例如

$string = "bla1bla2bla3textbla4bla5"; 

normaly我要爆炸過濾掉文本,而是因爲「bla3」不同的是,以「bla4」,我不知道如何爆炸或發現「文本」,但它總是之間「bla3」和「bla4」,但「文本」是變量aswel作爲bla1,2和5. 我發現「文本」後,我需要用其他文本替換它。

也許我可以在谷歌上找到這個,但問題是,我不知道如何描述它。

+1

嘗試使用'正則表達式'爲PHP將是一個函數稱爲'preg_replace' –

+0

你可以編輯3或4個不同場景的例子嗎?然後我們可以找出一個合適的正則表達式。 – brandonscript

+0

爲什麼在使用'str_replace'時使用正則表達式? – Joren

回答

0

使用explode

$parts = explode('text',$string); //splits it into two parts, removing `text` 
$string = $parts[0] .'replacement'. $parts[1]; //glue the parts together with replacement 

使用str_replace

$string = str_replace('text','replacement'); 

而且作爲描述您的問題:我想嘗試使用Google類似php replace substring

0

您可以使用preg_split()。我不記得確切的正則表達式,但它應該是這樣的:

$text = preg_split("/[0-9]*/", "bla1bla2bla3textbla4bla5"); 
+0

對於特殊問題,表達式可能是'/(bla)(3 | 4)/' –

0

好吧,一些例子。

$string1 = "bla1bla2bla3textbla4bla5"; 

找到$字符串 「文本」 和 「榜樣」 代替

輸出:

$string1 = "bla1bla2bla3examplebla4bla5"; 

其他例子

​​

找到 「不」,在$ string並將其替換爲「example」

輸出:

$string2 = "I bla3examplebla4 know how to do it" 

其他例子

$string3 = "textbla3textbla4text" 

查找 「文本」,但只有bla3和bla4和 「榜樣」 替換它的一個

輸出768,16是這樣

$string3 = "textbla3examplebla4text" 

希望這個更清楚。 所以bla3和bla 4的部分保持不變,但其他任何東西都可以改變。

相關問題