作者pziyout (pziyout)
看板Perl
标题Re: [问题] 删除文字档中某一段文字
时间Fri May 9 08:57:36 2008
※ 引述《hydec (你好吗?我很好!)》之铭言:
: 我有个资料夹底下有很多个设定档,设定档的内容是一些语系翻译,如:
: <locale name="C">
: :
: :
: </locale>
: <locale name="en_CA">
: :
: :
: </locale>
: 因为语系太多导致整个资料夹肥大,想问有没有方法能把档案中的 locale 区段
: 删除,只留我想要的语系就好 <locale name="C"> ... </locale>
(1) 如果你每个 locale 之间都有空行,则可以这样作,
open( F , "datafile" ) ;
$str = '"en_CA"' ;
$/ = "\n\n" ; # 每次读入一整笔 locale 资料
while ( ( $_ = <F> ) !~ m!name=$str! ) {}
print ;
(2) 如果之间没有空行,
open( F , "datafile" ) ;
$str = '"en_CA"' ;
while ( ( $locale = <F> ) !~ m!name=$str! ) {}
$locale .= $_ while ( ( $_ = <F> ) !~ m!<locale ! ) ;
print $locale ;
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.25.24