perl中.*的模式匹配的问题
$line = "i want to content with<jack@china.com>; jack,and tell him";
我要匹配到jack@china.com
这样写
$line =~ /.*with(\S+)>;.*/;
$email = $1;
对吗?好久不用了有点生疏,怕错喽
我是担心.*把一整行都匹配过去了。不知道.*到底是怎样的匹配机制
哪位给讲讲?谢啦!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
对不对试一下不就知道了?
问别人最起码也要说明你用的是什么东西啊。
shell?sed?awk?Perl?
偶像,标题中说明了,perl
不好意思,一着急忘说了,是perl
我试过是可以的(@需要特殊处理)。
只是我一直以来无法确认这样做是否没有问题,就是.*的问题
我不明白为什么.*没有把整行都匹配了
呵呵,刚才没说,后改的
[quote]原帖由 "风流涕淌"]偶像,标题中说明了,perl[/quote 发表:
[quote]原帖由 "iloveora"]就是.*的问题,我不明白为什么.*没有把整行都匹配了[/quote 发表:
因为 Perl 要“尽最大努力让你的匹配成功”,所以 .* 不会匹配整行。
谢谢!版主这么晚还在?
我用上面方法匹配的是$email='jack.com'
那个@后面没有匹配上。怎么处理啊?