第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP 字符串僅在某些行上替換

PHP 字符串僅在某些行上替換

PHP
夢里花落0921 2023-04-21 13:31:27
我目前有一個這樣的文件。[Line 1] Hello[Line 2] World[Line 3] Hello World我希望查找所有包含“Hello”的行,即第 1 行和第 3 行。然后我想在該行上將所有“行”的情況更改為“已更改”,因此輸出將是[Changed 1] Hello[Line 2] World[Changed 3] Hello World第二行保持不變。我目前有代碼可以找到其中包含 Hello 的所有行,但我不確定如何單獨編輯這些行而不是其他行。例如,下面的代碼確實找到了所有行,但也刪除了帶有 str_replace 的進(jìn)程中的所有內(nèi)容,所以我知道這不是我要查找的 str_replace。$lines = file("lines.html");$find = "Hello";$repl = "Changed";foreach($lines as $key => $line)  if(stristr($line, $find)){$line = str_replace("$find","$repl",$line);}
查看完整描述

2 回答

?
斯蒂芬大帝

TA貢獻(xiàn)1827條經(jīng)驗 獲得超8個贊

這是一個快速的方法 if$find = "Hello";和$repl = "Changed";:


$result = preg_replace("/\[Line (\d+\].*?$find.*)/", "[$repl $1", file("lines.html"));

file_put_contents("lines.html", $result);

匹配[Line并捕獲一位或多位()數(shù)字\d+

然后是任何東西.*?,然后是$find字符串,然后是任何.*捕獲所有內(nèi)容的東西

替換為[ $repl和捕獲的內(nèi)容$1


查看完整回答
反對 回復(fù) 2023-04-21
?
鴻蒙傳說

TA貢獻(xiàn)1865條經(jīng)驗 獲得超7個贊

要更改任何內(nèi)容,您必須使用現(xiàn)有行和新更改的行編寫一個新文件。這是一個簡單的例子


// create a new output file

$out = fopen('test2.txt', 'w');


$input = file("lines.html");

$find = "Hello";

foreach($input as $key => $line){

    $tmp = $line;

    if(stristr($line, $find)){

        $tmp = str_replace('[Line', '[Changed', $line);

        // or if `[Line` can appear more than once in the line

        //$tmp = substr_replace($line, '[Changed', 0, 5);

    }

    fwrite($out, $tmp);

}

fclose($out);

結(jié)果


[Changed 1] Hello

[Line 2] World

[Changed 3] Hello World


查看完整回答
反對 回復(fù) 2023-04-21
  • 2 回答
  • 0 關(guān)注
  • 140 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號