JavaScript正则表达式代码匹配字符和数字的问题
Trouble with JavaScript regex code to match characters and numbers
我需要帮助来解决使用正则表达式的问题。
我编写了以下 JavaScript 代码:
var s = '/Date(1341118800000)/';
var regex = new RegExp('^/Date'('d+')/$');
if ( typeof s === 'string' && s.match(regex) )
s = 'abc';
alert (s);
我写了一个正则表达式,我想匹配以以下确切字符开头的字符串:/Date(
后跟一个或多个数字,后跟确切的字符)/
,仅此而已。
在上面的JavaScript代码中,我希望字符串'abc'应该分配给s
,但是在这段代码结束时,s
的值是'/Date(1341118800000(/'。
我该如何解决这个问题?
转义斜杠已经被字符串消耗,即 "'(" === "("
.生成的未转义字符串被传递给new RegExp
,(
解释为特殊字符。
您应该使用正则表达式文字并转义/
:
var regex = /^'/Date'('d+')'/$/;
若要测试字符串是否匹配,可以使用:
regex.test(s);
问题是"/^/Date'('d+')/$/"
在javascript中转换为"/^/Date(d+)/$/"
。
"/^/Date'('d+')/$/" == "/^/Date(d+)/$/" // returns true
因此,只需逃离退格键,'
,即可解决问题。
var regex = new RegExp('^/Date''(''d+'')/$');
我相信
你正在寻找这段代码:
var s = '/Date(1341118800000)/';
s = s.match(/^'/Date'(('d+)')'/$/)[1];
alert(s);
在这里测试它。
相关文章:
- Podio问题:Can't将字符串转换为数字
- 在我的网站上创建一个在1-10之间不断变化的数字时遇到了问题.Javascript
- 浮点数字问题JavaScript
- 数据表rowId以数字问题开头
- JavaScript正则表达式代码匹配字符和数字的问题
- Java脚本中的一些大数字出现问题
- Javascript生成错误数字的问题
- 通过 JavaScript 在 td 中增加数字的问题
- 有一些JavaScript问题,for loop.将数字转换为其字符串值
- 这个javascript日期解析有什么问题?为什么 js 讨厌数字 8
- jQuery data() 将字符串视为数字的问题
- Javascript新手问题,将数字转换为任何单词
- 在 JavaScript 中向上舍入数字有问题
- Google Charts - hAxis 上的数字/字符串问题(Jquery ajax JSON 数据)
- JavaScript,数字舍入问题
- 将 JavaScript 字符串转换为数字时出现问题
- 检查数组是否包含数字(问题为 0)
- 可以't将字符串转换为数字javascript我的代码出了什么问题
- 单位数和双位数的数字问题
- HTML表单约束的JavaScript-数字问题