2012-08-01 40 views
0

我是Perl的新手,我目前試圖僅在一對字母上拆分字符串。 我看了其他答案,他們似乎是特定於該問題或缺乏評論來理解答案。字符串在Perl中通過字母拆分

最終目標是將一個非常長的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 /> 

我會看的到分割字符串的「< BR />成有自己的字符串,然後這些存儲字符串數組。到目前爲止,我曾嘗試拆分字符串是:

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

,並測試它通過打印輸出很努力,但它不工作

回答

7

split函數返回spli的數量。在標量環境中。要獲得分割列表,需要在列表上下文中調用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; 
3
$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;