我每天至少收到一次价格变动的电子邮件。我试图自动记录数据。我对正则表达式相当新,现在比5小时前更加困惑。
以下是一些要解析的示例行。请注意,时间格式并不总是相同:
Effective 00:01AM, 10/13/10, PRICES WILL BE AS FOLLOWS UNLESS OTHERWISE NOTED
Effective 00:01 AM, 10/13/10, PRICES WILL BE AS FOLLOWS UNLESS OTHERWISE NOTED
希望在插入数据库之前将时间和日期输入变量以便稍后在脚本中进行操作。
答案 0 :(得分:4)
use strict;
use Date::Parse;
for my $line (@lines) {
if ($line =~ /Effective (.+?) PRICES/) {
my ($sec, $min, $hr, $day, $mon, $year) = strptime($1);
$mon += 1;
$year += 2000;
# now you can use $year, $mon, $day, $hr, $min
}
}
答案 1 :(得分:1)
/(\d{2}:\d{2}[A-Z]{2}), (\d{2}\/\d{2}\/\d{2})/
从您发布的示例行中捕获00:01AM
和10/13/10
。