perl指定位置输出

perl指定位置输出

有一个文本,内容类似如下:
... ...
aaa = 2008 ao yun hui
bbb = 2009 2009
... ...  

这样的一个文本文件,我如何用Perl定位到aaa,然后将等号后面的"2008 ao yun hui"输出呢.请帮忙咯!~!!!!

忘记说啦一点,文本文件是用UNICODE做的.这个怎么解决呢???

这样行不行呢?
perl -F'=' -lane 'print $F[1] if /^aaa/'
嘿嘿,我看不懂这种方式,有时间的话,讲解具体点,或者用一个其他方式.还有,这个文本是UNICOD编码方式的.
@a=<>;
foreach(@a){
          s/\.*=$ //;
          print OUT
}

等号忘了该不该用反斜杠 忘了  
我写的比较弱  期待高手


QUOTE:
原帖由 joewish 于 2008-1-2 10:15 发表
@a=;
foreach(@a){
          s/\.*=$ //;
          print OUT
}

等号忘了该不该用反斜杠 忘了  
我写的比较弱  期待高手

嘿嘿,似乎代码有一些问题


QUOTE:
原帖由 Vic_Yu 于 2008-1-2 10:12 发表
嘿嘿,我看不懂这种方式,有时间的话,讲解具体点,或者用一个其他方式.还有,这个文本是UNICOD编码方式的.

UNICOD编码 我不懂,我那个命令后面直接加你的文件名就可以了,试试看。

perl -F'=' -lane 'print $F[1] if /^aaa/' urfile
@a=<>;
foreach(@a){
          s/\.*=$ //;
          print OUT
}

句柄一类的我都没给你写   我的意思是 把你 所有 =号左面的连同等号去掉 直接把右面输出
你自己可以改变下 直接写成^aaa 代替模式
Config::INI::Reader
....还有很多
如果你的文本格式像INI文件的话,你就可以用这个模块


QUOTE:
原帖由 zhangkeyijian 于 2008-1-2 11:00 发表
Config::INI::Reader
....还有很多
如果你的文本格式像INI文件的话,你就可以用这个模块

关键是不是呢,是一个SERVER上跟踪的纪录,我需要知道他里面的具体细节,UNICODE是美国公司SERVER的需求......


QUOTE:
原帖由 ly5066113 于 2008-1-2 10:24 发表


UNICOD编码 我不懂,我那个命令后面直接加你的文件名就可以了,试试看。

perl -F'=' -lane 'print $F[1] if /^aaa/' urfile

嘿嘿,按照你的意思,但是似乎我这里出错,我是在WINDOWS环境下运行perl的,错误信息:"Bad name after F' at C:\Documents and Settings....."