0
您好我想在一個文件中替換字符串,test.txt的:Perl,以這樣的字符串替換特定塊中的字符串的文件
<g
id="g16526">
<g
<g
id="gnnnnn">
<g
,並使用他們變成
<g
id="gg1">
<g
...
<g
id="ggn">
<g
這個perl腳本
#!C:/Strawberry/perl
open(FILE, "<test.txt") || die "File not found";
my @lines = <FILE>;
close(FILE);
my $string = '<g
id=';
my $string2 = '<g
<g';
my $anything = ".*";
my $replace = 'gg';
my @newlines;
my $counter = 1;
foreach(@lines) {
$_ =~ s/\Qstring$anything\Q$string2/$string$replace$string2$counter/g;
$counter++;
push(@newlines,$_);
}
open(FILE, ">test.txt") || die "File not found";
print FILE @newlines;
close(FILE);
,但它不工作,任何建議表示讚賞
什麼類型的文本文件?如果是XLM - 您應該使用XML :: Simple來獲取id值並將其替換。 – ilux
@ilux Re:「_you should use XML :: Simple_」。 「XML :: Simple」已被棄用,甚至自己的文檔建議不要使用它,原因很多。它在很久以前就有它的地位和重要性,但它現在不應該使用。標準是'XML :: LibXML'和'XML :: Twig'。 – zdim
謝謝@ilux Re,XML :: LibXML或XML :: Twig是解決方案。 – user1420482