JavaScript正则表达式帮助

JavaScript正则表达式帮助,javascript,regex,Javascript,Regex,我得到的字符串值为/Date(1)/和/Date(-99999)/。数字长度可变 正则表达式不是这样的吗:^/Date\(d+\)/$不,您的正则表达式缺少数字前面的可选减号(\d)。您还需要转义/,因为它们也是正则表达式的分隔符。请尝试以下正则表达式: ^/Date\(-?\d+\)/$ 在RegExp构造函数中: new RegExp("^/Date\\(-?\\d+\\)/$") 或作为文字: /^\/Date\(-?\d+\)\/$ 否,正则表达式缺少数字前面的可选减号(\d)。您

我得到的字符串值为
/Date(1)/
/Date(-99999)/
。数字长度可变


正则表达式不是这样的吗:
^/Date\(d+\)/$

不,您的正则表达式缺少数字前面的可选减号(
\d
)。您还需要转义
/
,因为它们也是正则表达式的分隔符。请尝试以下正则表达式:

^/Date\(-?\d+\)/$
在RegExp构造函数中:

new RegExp("^/Date\\(-?\\d+\\)/$")
或作为文字:

/^\/Date\(-?\d+\)\/$

否,正则表达式缺少数字前面的可选减号(
\d
)。您还需要转义
/
,因为它们也是正则表达式的分隔符。请尝试以下正则表达式:

^/Date\(-?\d+\)/$
在RegExp构造函数中:

new RegExp("^/Date\\(-?\\d+\\)/$")
或作为文字:

/^\/Date\(-?\d+\)\/$

不完全是。您不允许使用前导连字符,并且您的斜杠有点不可靠

/^Date\(-?\d+\)$/

不完全是。您不允许使用前导连字符,并且您的斜杠有点不可靠

/^Date\(-?\d+\)$/

似乎您正在获取由序列化的JSON日期值,斜杠包含在字符串中,为了捕获时间戳,您可以简单地匹配可选减号和任意数字字符序列:

var date = "\/Date(1240718400000)\/";
var timeStamp = date.match(/-?\d+/)[0]; // 1240718400000;
或者更严格的一个:

var timeStamp = date.match(/\/Date\((-?\d+)\)\//)[1]; 

似乎您正在获取由序列化的JSON日期值,斜杠包含在字符串中,为了捕获时间戳,您可以简单地匹配可选减号和任意数字字符序列:

var date = "\/Date(1240718400000)\/";
var timeStamp = date.match(/-?\d+/)[0]; // 1240718400000;
或者更严格的一个:

var timeStamp = date.match(/\/Date\((-?\d+)\)\//)[1]; 

RegExp的目的是提取时间戳,或者只是测试字符串是否与模式匹配?RegExp的目的是提取时间戳,或者只是测试字符串是否与模式匹配?