RegExp stumper,应该很简单

时间:2013-08-23 16:27:50

标签: javascript regex

我通常对RegExp非常满意,但是这个让我难过。这是javascript片段:

var justDateRegex = '\d+/\d+/\d+';
var dateStr = $('#Dropdown').find(':selected').text();
var onlyDate = dateStr.match(justDateRegex);
console.log('Regex: ' + justDateRegex + ' dateStr: ' + dateStr + ' onlyDate: ' + onlyDate);

这是console.log

的输出
Regex: d+/d+/d+ dateStr: 11/23/2013 12:00:00 AM onlyDate: null

我希望onlyDate读取:2013年11月23日,但它为null。有什么想法吗?

2 个答案:

答案 0 :(得分:5)

String.match()期望其参数为RegExp对象,而不是字符串。

var justDateRegex = /\d+\/\d+\/\d+/;
var dateStr = $('#Dropdown').find(':selected').text();
var onlyDate = dateStr.match(justDateRegex);

答案 1 :(得分:1)

问题是你必须逃离\。这是一个working JSFiddle

var justDateRegex = '\\d+/\\d+/\\d+';
var dateStr = '11/23/2013';
var onlyDate = dateStr.match(justDateRegex);
console.log('Regex: ' + justDateRegex + ' dateStr: ' + dateStr + ' onlyDate: ' + onlyDate);