2012-11-18 66 views
0

我有一大段文字,而且我知道在哪一行數字中出現了一段特定的字符串。我需要用別的東西代替它。但是,我怎樣才能取代特定的字符串只在特定的行號?替換某個行號的字符串

實施例文本:

1: Lorem ipsum dolor sit amet, [[consectetur]] adipiscing elit. Aliquam 
2: imperdiet dolor ut urna hendrerit tempus in sit amet nibh. Maecenas 
3: est est, imperdiet quis tristique pulvinar, convallis et justo. 
4: 
5: Duis nulla lacus, [[aliquet]] at ornare nec, ultricies ac erat. Aliquam 
6: dignissim, tellus et pharetra [[rhoncus]], magna nisi scelerisque urna, in 
7: imperdiet [[metus]] orci id risus. 

在這種情況下,我只想要在線路1並在與--(兩個短劃線)線6更換[[字符。

在PHP中這樣做很容易嗎?

+0

有與'sed'這樣做的一個簡單的方法;)'的sed -e'1s/\'\'[\ [/ - /'[\ [/ - /'example.txt' –

+0

@OlafDietsche它會在Windows或共享主機上「簡單」嗎? –

+0

@ WebnetMobile.com你抓到我;-) –

回答

2

有PHP沒有緊湊的方式,但您可以通過在線讀取文件中的行和替換字符串, 在需要的地方:

$f = fopen('example.txt', 'r'); 
for ($i = 1; ($line = fgets($f)) !== false; $i++) { 
    if ($i == 1 || $i == 6) 
     $line = str_replace('[[', '--', $line); 

    echo $line; 
} 

fclose($f);