我有一個文本文件,如下所示:如何用str_replace()替換一個詞,僅當它不是另一個詞的一部分?
yyy.txt:
line1
line2
line3line4
line5line3
line3
現在我想在下面的代碼555
更換line3
。但是,如果line3
不是另一個單詞的一部分,我只想替換該行,例如XYline3
或line3XY
。
我試着用這個代碼來實現:
$filename="yyy.txt";
$line="line3";
file_put_contents($filename, str_replace($line , "555", file_get_contents($filename)));
輸出:
line1 line2 555line4 line5555 555
正如你可以在這裏看到它也換成line3line4
和line5line3
即使我不想這樣。
那麼,如何更改我目前的代碼,它只會替換搜索詞,如果它不是另一個詞的一部分?我有點卡在這裏,不知道這是可能的str_replace()
或如果我必須以另一種方式做到這一點。
你需要使用正則表達式或更具體的'search'字符串。 – chris85
你的問題的格式非常分散。請格式化並澄清您的具體問題。 – chris85
請勿多次發佈相同或接近相同的問題。 –