2012-08-04 32 views
0

我需要使用preg_match_all在給定的文本內重複出現。例如。

輸入: 「Lorem存有簡直是[重複]虛擬[/重複]印刷排版行業的文本。」

輸出:「Lorem Ipsum簡直就是虛擬假人文字的印刷和排版行業。」

示例已經嘗試過,但我的限制沒有幫助。
我對誰可以幫我感激,感謝重複出現與preg_match_all

+1

請發表你試過 – 2012-08-04 08:32:34

回答

0

您還需要替換[repeat]的出現次數。

基於@Jerska答案:

$output = preg_replace ("#(\[repeat\])(.+)(\[/repeat\])#isU", '$2$2', $input); 
+0

除了添加不需要的括號外,您實際上沒有改變我的答案。這些'[重複]'將被我的答案從文本中刪除。最後,對於這種變化,請不要猶豫,點擊「編輯」鏈接。 – Jerska 2014-09-28 11:46:46

1

只需使用的preg_replace:

$output = preg_replace ("#\[repeat\](.+)\[/repeat\]#isU", "$1$1", $input); 

就大功告成了。 :)

+0

Jerska的代碼,這將是差不多,但我需要不同的情況,因爲重複是帶環。閆,我需要一個方向,以創建該功能。 – 2012-08-04 08:38:28

+0

嗡嗡聲?不要得到它。 – Jerska 2012-08-04 08:39:22

+0

preg_replace替換字符串中的所有事件,如果這就是你的意思。它已經是一個循環。 – Jerska 2012-08-04 08:40:37