【问题标题】:String Splitting by letters in PerlPerl中的字符串拆分
【发布时间】:2012-07-30 08:04:31
【问题描述】:

我是 Perl 的新手,我目前正在尝试仅在几个字母上拆分字符串。 我查看了其他答案,它们似乎是针对该问题的,或者缺乏 cmets 来理解答案。

最终目标是将一个非常长的 CSV 文件拆分为可接收的部分,以便以后使用。样本数据是

HOME 123454 monkey lion 6.4.2.10 ( ABCD EFGH (Tue 20th August 2000) 12345 True )<br />HOME 123454 monkey lion 6.4.2.10 ( ABCD EFGH (Tue 20th August 2000) 12345 True )<br />

我希望通过 " 将字符串拆分为自己的字符串,然后将字符串存储在数组中。到目前为止,我尝试拆分字符串的是:

my $line1 = split("/<br />", $Line);

并尝试通过打印输出来测试它,但它不起作用。

【问题讨论】:

    标签: string perl split


    【解决方案1】:

    split 函数返回标量上下文中的拆分数。要获取拆分列表,需要在列表上下文中调用split

    my $str   = q{HOME 123454 monkey lion 6.4.2.10 ( ABCD EFGH (Tue 20th August 2000) 12345 True )<br />HOME 123454 monkey lion 6.4.2.10 ( ABCD EFGH (Tue 20th August 2000) 12345 True )<br />};
    my @lines = split qr{<br\s?/>}, $str;
    

    【讨论】:

      【解决方案2】:
      $str = 'HOME 123454 monkey lion 6.4.2.10 ( ABCD EFGH (Tue 20th August 2000) 12345 True )<br />HOME 123454 monkey lion 6.4.2.10 ( ABCD EFGH (Tue 20th August 2000) 12345 True )<br />';
      
      my @list = split(qr'<br />', $str);
      
      say $_ for @list;
      

      【讨论】:

        猜你喜欢
        • 2013-07-07
        • 2013-11-08
        • 2014-08-06
        • 2012-10-13
        • 1970-01-01
        • 1970-01-01
        • 2015-11-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多