我需要正则表达式从字符串中获取日期部分(即2014年3月23日),格式如下:
2014年3月23日,包括50,000 67 A Part 500
我已经尝试了以下但它不起作用,任何想法?
preg_match("/[0-9]+[ ][a-zA-Z][ ][201][0-9]$/",$str,$matchx);
我正在使用PHP
答案 0 :(得分:0)
你需要有正确的量词;不要为字符串201
或空格使用类(虽然前者比后者更麻烦),并且你必须允许在日期之后发生的事情(所以摆脱{{1} }):
$
顺便说一下 - 我选择的表单不允许preg_match("/[1-9][0-9]? [A-Z][a-zA-Z]+ 201[0-9]/",$str,$matchx);
- 它不会让你有一个前导零,并且它希望当月的第一个字母大写。你当然可以轻松改变它。
测试:
09 March
结果:
<?php
$str="23 March 2014 and includes 50,000 67 A Part 500";
preg_match("/[1-9][0-9]? [A-Z][a-zA-Z]+ 201[0-9]/",$str,$matchx);
print_r($matchx);
?>