嗨一個錨標記,我想全部替換「的引文簡單引用」,但不替換「」爲「非在PHP
Lorem 'ipsum' dolor sit amet, <a href="#">sit amet</a>
IM做這個$valFieldBody = str_replace('"', "''", $valFieldBody);
但全部替換「我不知道如果我能使用str_replace
或preg_replace
funcion與像!=
或<>
消極條件可以請你幫我
感謝
嗨一個錨標記,我想全部替換「的引文簡單引用」,但不替換「」爲「非在PHP
Lorem 'ipsum' dolor sit amet, <a href="#">sit amet</a>
IM做這個$valFieldBody = str_replace('"', "''", $valFieldBody);
但全部替換「我不知道如果我能使用str_replace
或preg_replace
funcion與像!=
或<>
消極條件可以請你幫我
感謝
preg_replace函數的功能使您可以多種組合來代替,在這種情況下,我查找字符串代替只接受空格和字母數字字符(在您的情況下是字符串「ipsum」),可以擴展爲其他字符(如果需要)
字符串示例
更新代碼:
$text='Lorem "ipsum" dolor sit amet, <a href="#">sit amet</a>';
$text = preg_replace('/\"([A-Za-z0-9? ,_-]+)\"(?=[^<>]*(?:<|$))/', "'$1'", $text);
echo $text;
//out--> Lorem 'ipsum' dolor sit amet, <a href="#">sit amet</a>
你可以使用一個SKIP-FAIL regex:
preg_replace('~<[^>]+>(*SKIP)(*F)|"~', "'", $valFieldBody);
圖案的詳細資料
<[^>]+>
- 匹配<
,1+字符以外>
,然後>
(*SKIP)(*F)
- 2 PCRE動詞省略匹配的文本,使正則表達式引擎搜索下在本次比賽結束後進行比賽|
- 或"
- 在其他情況下的雙引號。
@WiktorStribiżew謝謝你幫我(y) – skycomputer2
@Wiktor現在你已經發布了一個答案,請刪除你的評論。 – mickmackusa