当前位置:  开发笔记 > 编程语言 > 正文

Perl正则表达式与新线分开

如何解决《Perl正则表达式与新线分开》经验,为你挑选了1个好方法。

我是Perl的新手,正在为一所学校的项目工作,我被困住了.

输入:包含由空格,制表符",",";"分隔的电子邮件地址的给定文本文件 或":"[可以在不同的行上].

我正在尝试阅读电子邮件地址并将它们放入数组中.我能够在一行解析数据但是如果有换行符或返回我只得到最后一个元素.

有人可以帮我弄清楚如何在一个单独的行上列出每个地址的列表并解析它们吗?我已经阅读了一些正则表达式但需要更多练习.谢谢.

open(EmailAddresses, "EmailAdressesCommaList.txt") || die "Can not open file $!";

# 
while ()
{
    chomp;
    # Split the line into words
    @lines = split /[ ,;:\t\r\n(\t\r\n\s)+?]/;
}

foreach $value (@lines)
{
    print $value . "\n";
}

chaos.. 7

open(EmailAddresses, "EmailAdressesCommaList.txt") || die "Can not open file $!";
while() {
    chomp;
    push @lines, split /[ ,;:\t\r\n(\t\r\n\s)+?]/;
}
foreach $value (@lines) {
    print $value . "\n";
}

即问题不在于你的正则表达式,而是每次循环都会覆盖@lines.



1> chaos..:
open(EmailAddresses, "EmailAdressesCommaList.txt") || die "Can not open file $!";
while() {
    chomp;
    push @lines, split /[ ,;:\t\r\n(\t\r\n\s)+?]/;
}
foreach $value (@lines) {
    print $value . "\n";
}

即问题不在于你的正则表达式,而是每次循环都会覆盖@lines.

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有