我有这行代码在一个文本文件分裂空格:分裂空格用perl
my @line_splits = split /\s+/, $ine;
这是文本文件的一些内容:
1 2016-09-27 14:07:20.084877
2 2016-09-27 14:07:20.084998
3 2016-09-27 14:07:20.131343
4 2016-09-27 14:07:20.131374
6 2016-09-27 14:07:20.137359
7 2016-09-27 14:07:20.137556
8 2016-09-27 14:07:20.137796
9 2016-09-27 14:07:20.437769
10 2016-09-27 14:07:20.437796
100 2016-09-27 14:07:23.293661
我目标是获取日期和时间(我知道的是$ line_splits [1]和$ line_splits [2])。
但是,当我跑我的Perl脚本,从1到99的线接错,而在100和起来,我已经得到了我想要的东西。
Time Stamp: 98 2016-09-27 --> line 98
Time Stamp: 99 2016-09-27 --> line 99
Time Stamp: 2016-09-27 14:07:23.293661 --> line 100
Time Stamp: 2016-09-27 14:07:23.299406 --> line 101
Time Stamp: 2016-09-27 14:07:23.299437 --> line 102
有人可以告诉我,如果正则表达式有什么问题,或者有另一种方法来做到这一点?
我不知道它是否已经在这里重复,但任何帮助将非常感激。
谢谢:)
跳过前导空格用'/^\ S +(* SKIP)(* F)| \ S + /' –
'$线=〜s/^ \ S + | \ s + $ //'从修剪空白一条线的左侧和右侧。我使用它很多,节省了很多错误。 – yonyon100
你根本不需要跳过前面的空格,因为如果你只是'split'''而不是'split \ \ s + /' – Sobrique