2017-05-19 108 views
-1

對不起,不能把標題正確地把我的問題,我找不到一個方法來問它。如何替換所有匹配的正則表達式的PHP

所以我試着去替換裏面的所有文字和'在PHP更換爲'

我有一個變量$desc = "he's such a good person and he'll be very successfull";

,我嘗試做以下

$desc = str_replace("'","'",$desc); 

但是在str_replace中沒有辦法使用正則表達式?

是的,現在看起來很好...出於某種原因。

有沒有辦法使用正則表達式呢?

例如從文本中刪除html標籤?

$desc = "<strong> he&#39;s such a good person </strong> <br /> he&#39;ll be very successfull";

$desc = str_replace("<*>"," ",$desc);

+2

它工作正常。試試這個https://eval.in/800942 –

+0

它工作正常...? – samiles

+1

您必須在當前行之前的某處使用'htmlentities'。使用'html_entity_decode'將實體解碼爲它們的文字表示。 –

回答

0

是否必須是一個正則表達式,因爲這是一個簡單得多的方式來做到這一點

$desc = "he&#39;s such a good person and he&#39;ll be very successfull"; 

$new = str_replace('&#39;', "'", $desc); 
echo $new; 

結果:

he's such a good person and he'll be very successfull 
2

你可以試試要使用正確的PHP函數來完成這項工作,請使用al ook:preg_replace doc。

在你的情況,你想用這樣的:

preg_replace('/&#39;/', "'", $desc); 

看看這個執行: https://eval.in/800948

+0

這可以用於'preg_replace('<*>',「」,$ desc);'? –

+0

當然@JuanfriLira你可以這樣使用它:'preg_replace('/ \ <.*\> /','「,$ desc);'替換」<" and ">「之間的文字。 – Sense

0

你並不需要使用正則表達式,因爲它會更復雜 使用

$desc = "he&#39;s such a good person and he&#39;ll be very  successfull"; 
$desc = str_replace("&#39;","'",$desc); 
echo "after replace :"." ".$desc;  

更簡單:)

相關問題