我知道這很容易,我自己做了一百萬次;但這一天晚了,我腦筋急轉彎。preg_replace PHP
我試圖匹配並替換整個單詞而不是每次出現。
所以,我想替換單詞「我」的每一次出現,幷包含「xxx」
如更換它。 「我遇到的SMEG」變成了「XXX符合SMEG」
我不想要的是:
「我滿足SMEG」變成了「XXX xxxets sxxg」
我知道它的preg_match但我就是」不要忘記整個單詞的模式匹配。
請幫忙
奧利弗。
我知道這很容易,我自己做了一百萬次;但這一天晚了,我腦筋急轉彎。preg_replace PHP
我試圖匹配並替換整個單詞而不是每次出現。
所以,我想替換單詞「我」的每一次出現,幷包含「xxx」
如更換它。 「我遇到的SMEG」變成了「XXX符合SMEG」
我不想要的是:
「我滿足SMEG」變成了「XXX xxxets sxxg」
我知道它的preg_match但我就是」不要忘記整個單詞的模式匹配。
請幫忙
奧利弗。
\b matches a word boundary,所以像/\bMe\b/
(或/\bme\b/i
不區分大小寫)應該給你你想要的正則表達式!
您使用\b
字邊界。
$str = preg_replace('/\bMe\b/', 'xx', $str);
對於不區分大小寫,使用i
修改:
$str = preg_replace('/\bme\b/i', 'xx', $str);
單詞邊界字符
$output = preg_replace("/\\bme\\b/", 'xxx', $input);
$replaced = preg_replace('/\bme\b/i','xxx',$phrase);