2011-08-16 17 views
2

我有這樣的PHP代碼如何保持一些字符使用的preg_replace

$audio_name=preg_replace('/[&#].*[;]/','',$audio['name'][1][$i]); 

,但我想保持法國字符

+0

像口音和撇號......你知道的:d – Lynob

+1

請出示一些例子輸入和相應的預期輸出 –

+0

給我們的,你有什麼例子和你想要它取代什麼。 – mowwwalker

回答

1

您可以使用preg_replace_callback,回調可以回到'',如果你想如果要保留它,請移除元素並返回匹配的元素。

注意:.*是貪婪的,會吃掉一切,直到最後;,所以使用[^;]*

+0

會試試看,先生謝謝:D – Lynob

+0

我用另一種方式解決了,謝謝你的時間先生:D – Lynob

1

例如,與BBBBBBBB更換AAAAAAAA:

$string= 'start AAAAAAAA end'; 
echo preg_replace('/(start)(.*?)(end)/i', (!empty('$1') ? '$1' : '').'BBBBBBBB'.(!empty('$2') ? '$2' : '') , $string); 
相關問題