如何匹配?

如何匹配?

练习LWP,遇到点小问题

#<A href="http://www.168.com/groups_home.php?urlkey=5">john:simith:simith@168.com</A></DIV>
要将john:simith:simith@168.com提取出来,下面的匹配好像有些问题,如何才能正确匹配,请指点,谢谢,辛手。
~ m%<A href=\"http://www.168.com/groups_home.php?urlkey=5\">(.*)</A>%g
没有必要为这个事情用 re

试试这个?
Email::Find

或者用 HTML::TokenParse?


QUOTE:
原帖由 cobrawgl 于 2008-8-23 12:22 发表
没有必要为这个事情用 re

试试这个?
Email::Find

或者用 HTML::TokenParse?

谢谢cobrawgl ,我是新手,你说的这两个我都不懂啊,更不知道如何用?我是想上面的如何匹配,才能将后面的内容提取出来,非常感谢你的指点。
如果仅仅这一种情况用re很容易实现。如果你的情况比较多的话,用re确实不通用。
如果你非要用re,请参考打骆驼的里有关于提前匹配一章节。会得到比较通用点结果
my $line = '#<A href="http://www.168.com/groups_home.php?urlkey=5">john:simith:simith@168.com</A></DIV>';
print $1 if $line =~ m {.*>(.*\@.+?)<};



output:
john:simith:simith@168.com
多谢forlorngenius  ,问题总算解决了,没想到这么一个小问题,竟然搞了一个上午,看来要继续努力,刚学真是太困难了,谢谢热心人。
一起努力,perl在外被人贬,可是perler一般都有点热情过渡。
不要滥用正则表达式。
Some people, when confronted with a problem, think “I know, I'll use regular expressions.” Now they have two problems.
                                                                                         --Jamie Zawinski, in comp.emacs.xemacs
呵呵,挺搞的一句话