0

Perlでプログラムを書いています。既存のファイルを開いて、その中の 1 つの単語だけを置き換える必要があります。そのため、Perl を使用してファイルの単語または行を置き換える方法を知る必要があります。

誰でもこれを行う方法を教えてもらえますか?

4

2 に答える 2

6

確かに、ここであなたがする必要があることは次のとおりです。

  1. ファイルを読み取り用に開きます。
  2. 書き込み用の一時ファイルを開きます。
  3. ファイルの終わりに達していない間、
    1. 入力ファイルから 1 行読み取ります。
    2. s///行を変更するために使用します。
    3. 変更された可能性のある行を出力ファイルに出力します。
  4. 両方のファイルを閉じます。
  5. rename出力ファイルを入力ファイルの名前に変更します。
于 2013-01-05T06:25:40.060 に答える
1

ファイルハンドラーを使用して最初にファイルを開く

open(KI,"$gy"); #$gy contain your file location

ファイルを開いた後、次のようにします。

while(my $line= <KI>)
{
if($_=~'word or pattern to be found')
{
$_=~ s/word_pattern to be changed/new word/;
}
}

例:文字列内のロンドンのオカレンスをロンドンに置き換えるには、s / london /London/を使用できます。

2つの正規表現(ロンドンとロンドン)が合計3つのスラッシュで囲まれていることに注意してください。この式の結果は、行われた置換の数であるため、この場合は0(false)または1(true)のいずれかになります。

ご不明な点がございましたら、お気軽にご返信ください。

于 2013-01-05T07:19:33.990 に答える