我在iPhone上打字因此这将是我很难格式化代码等PHP复杂的正则表达式
基本上,我有内容类似下面的文本文件:
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正则表达式来提取所有这些信息以外的日期字符串
I”我已经尝试过各种各样的尝试和错误,只是无法达成解决方案!
如果有人能帮助我,我会非常感激! :-)
编辑追加评论最佳尝试: 它是这样的:
preg_match('/(^[a-zA-Z\'-]+\s[a-zA-Z\'-]+) ([0-9]+) (([0-9]+))(\s(([0-9]{2}?)))?/', $line, $matches);
谢谢你们! 马克
请发布您的最佳尝试,即使它不起作用。解决方案非常简单,应该很容易解释你出错的地方。 – Amadan
尝试一个活的正则表达式编辑器(http://www.phpliveregex.com)来摆弄! – Luke
@Amadan我目前正在关闭计算机,但它是这样的:preg_match('/(^ [a-zA-Z \'-_] + \ s [a-zA-Z \' - _)+)([0-9] +)\(([0-9] +)\)(\ s \(([0-9] {2}?)\))?/',$ line, $匹配); -----我似乎无法让它可选地抓住括号中的数字。我显然不是正则表达式专家!我的代码也只需要两个字,而不是多个。所以如果有三个字开头,它将不匹配:( –