2016-11-09 213 views
-2

我有一个包含两个日期的文字,我想提取文本,这将是对这个文本的正则表达式两个日期。正则表达式

he was out of city in period of 10/15/16 Sat 7am - 10/16/16 Sun 3am ₨350.00/hr - you have to remain onlines, which will enable you to meet him. 

我有多个不同文本的字符串,但每个字符串都有两个日期。我如何在php中获得这些日期。只是想日期16年10月15日和16年10月16日

+0

您是否尝试过的东西? –

+0

这是什么:'₨350.00/hr'?它应该匹配吗? – nozzleman

回答

0

这应该让你接近:

(0[1-9]|1[012])\/([0][1-9]]|[12]\d|3[01])\/\d{2}\s[A-Z][a-z]{2}\s(\d|1[012])[ap]m 

看到这个Action at Regex101

,如果你只想匹配有效日期:

(0[1-9]|1[012])\/([0][1-9]]|[12]\d|3[01])\/\d{2} 

this example

0

如果使用此拍它将捕获格式x(x)/ x(x)/ xx(xx)。
含义一位或两位数的日,月和两个或四个数字的年份。

$string = "he was out of city in period of 10/15/2016 Sat 7am - 10/16/16 Sun 3am ₨350.00/hr - you have to remain onlines, which will enable you to meet him."; 
preg_match_all("/(\d{1,2}\/\d{1,2}\/\d{2,4})/", $string, $dates); 


var_dump($dates[1]);