我正在iPhone上键入此代码,因此很难格式化代码等。
基本上,我有一个文本文件,其内容类似于以下内容:
Mercedes Benz 4726498 on April 23rd 2015 03:02:14 am (1847284839)
Vauxhall Astra 3819482 on April 25th 2015 01:26:34 pm (382838484)
Vauxhall Astra Estate 4728482 (22) on June 22nd 2015 02:48:42 pm (382848388)
基本上,它是一个或多个单词的序列,一个7位数字,然后是方括号之间的数字,日期字符串和方括号中的数字的几率
每行将包含一系列单词,7位数字,日期字符串和末尾的数字
括号中的数字(例如第三行)在某些行中,但不是全部
基本上,我想在PHP中编写一个正则表达式以提取除日期字符串以外的所有信息。
我已经尝试了各种各样的尝试,反复试验了很长时间,只是无法找到解决方案!
如果有人可以帮助我,我将不胜感激!:-)
编辑以添加评论的最佳尝试:它是这样的:
preg_match('/(^[a-zA-Z\'-]+\s[a-zA-Z\'-]+) ([0-9]+) (([0-9]+))(\s(([0-9]{2}?)))?/', $line, $matches);
多谢你们!标记
以下内容似乎起作用:
([A-Za-z ]*) ([0-9]{7}) (?:\(([0-9]{2})\) )?on ([A-Za-z0-9: ]*) \(([0-9]*)\)
当应用于示例输入时,我们得到以下数组:
array(6
0 => Mercedes Benz 4726498 on April 23rd 2015 03:02:14 am (1847284839)
1 => Mercedes Benz
2 => 4726498
3 =>
4 => April 23rd 2015 03:02:14 am
5 => 1847284839
)
array(6
0 => Vauxhall Astra Estate 4728482 (22) on June 22nd 2015 02:48:42 pm (382848388)
1 => Vauxhall Astra Estate
2 => 4728482
3 => 22
4 => June 22nd 2015 02:48:42 pm
5 => 382848388
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句