从String中匹配并选择日期?

时间:2013-07-30 09:13:07

标签: javascript regex

字符串:

Michael Jordan <br> 1963-02-17 Brooklyn, New York

我如何才能使用正则表达式和JavaScript获取1963-02-17

1 个答案:

答案 0 :(得分:3)

要特别匹配此日期格式(即YYYY-MM-DD):

var str = 'Michael Jordan <br> 1963-02-17 Brooklyn, New York';
var date = str.match(/[0-9]{4}-[0-9]{2}-[0-9]{2}/)[0]; //"1963-02-17"

如果它不总是在字符串中有日期,您将首先检查有效匹配:

var str = 'Michael Jordan <br> 19632-17 Brooklyn, New York';
var date = str.match(/[0-9]{4}-[0-9]{2}-[0-9]{2}/);
if(date && date[0])
{
    date = date[0];
}
//date is "1963-02-17" or NULL

如果日期不匹配,第一个示例将抛出错误,而第二个示例将静默失败并使date等于NULL