0
我'試圖傳遞一個字符串php如何爲preg_match轉義字符串?
preg_replace('/'.preg_quote($my_str).'/i', '', $string);
,但我得到一個錯誤
preg_replace(): Unknown modifier '\'
有沒有其他的解決方案,以逃避那些反斜槓?
我'試圖傳遞一個字符串php如何爲preg_match轉義字符串?
preg_replace('/'.preg_quote($my_str).'/i', '', $string);
,但我得到一個錯誤
preg_replace(): Unknown modifier '\'
有沒有其他的解決方案,以逃避那些反斜槓?
傳遞的分隔符到preg_quote
echo preg_replace('/'.preg_quote("$my_str",'~').'/i', '',$string);
^
你$ my_str的子第二個參數包含在它/
性格,你正在使用正則表達式作爲分隔符。所以你有兩種解決方案,
一,把分隔符/
替換成其他變量中不包含的任何東西。例如~
preg_replace('~'.preg_quote($my_str).'~i', '', $string);
^ ^
二的解決方案,與\/
從$my_str
全部更換/
後preg_quote
$my_str = str_replace('/', '\/', preg_quote($my_str));
$some_str = preg_replace('/'.$my_str.'/i', '', $string);
你要通過正則表達式的分隔符(/)作爲'preg_quote' – hindmost
什麼是正第二個參數你傳遞給'preg_quote'的表達式?您可能需要添加分隔符。 –
你能告訴我們$ my_str的值嗎? – edisonthk