标签: php regex
我有一个充满电影片名的数据库,我想提取我用以下方法做的日期:
(19|20)[0-9][0-9]
但是我注意到我的一些日期是在1998-2003的范围内,或者有时候有一个像1998 - 2003这样的空间。有没有办法让正则表达式适应有或没有空格的范围?< / p>
答案 0 :(得分:4)
使用\s*匹配零个或多个空格。
\s*
(?:19|20)[0-9]{2}\s*-\s*(?:19|20)[0-9]{2}
DEMO
如果您还要匹配单年,则将第二部分设为可选。
(?:19|20)[0-9]{2}(?:\s*-\s*(?:19|20)[0-9]{2})?