Javascript 用于删除子字符串和x之后的所有字符的正则表达式
我对正则表达式有问题。我有这样一个字符串:Javascript 用于删除子字符串和x之后的所有字符的正则表达式,javascript,regex,Javascript,Regex,我对正则表达式有问题。我有这样一个字符串: /Date(-62135596800000+0100)/ 我想删除所有直到并包括左括号和+号之后的内容,到目前为止,我已经想到了以下内容: [\/Date(]|\+(.*) 它有两个问题,1)它匹配单个字符/、D、a等,而不是匹配子字符串“/Date(”;2)它在使用replace时抛出并出错,如下所示: function returnNewString(oldString) { var re = [\/Date(]|+(.*),
/Date(-62135596800000+0100)/
我想删除所有直到并包括左括号和+号之后的内容,到目前为止,我已经想到了以下内容:
[\/Date(]|\+(.*)
它有两个问题,1)它匹配单个字符/、D、a等,而不是匹配子字符串“/Date(”;2)它在使用replace时抛出并出错,如下所示:
function returnNewString(oldString) {
var re = [\/Date(]|+(.*),
output = oldString.replace(re,'');
return output;
}
我是reg ex的新手,因此上述内容可能在各方面都是错误的,因此任何帮助都将受到感谢,谢谢假设您的文本始终是这样的,您可以使用以下内容:
function returnNewString(oldString) {
return oldString.match(/[-\d]+/);
}
function returnNewString(oldString) {
return oldString.match(/(?:-|\+)?\d+/);
}
另一方面,如果您可能有一个类似于/Date(+62135596800000+0100)/
或类似于/Date(62135596800000+0100)/
的字符串,那么您应该使用:
function returnNewString(oldString) {
return oldString.match(/[-\d]+/);
}
function returnNewString(oldString) {
return oldString.match(/(?:-|\+)?\d+/);
}
说明:未替换的括号与字符串中的左括号和加号之间的部分相匹配,而加号是整个字符串唯一被替换的($1
)。/Date((?\d+)+\d+/
组1将包含字符串的所需部分
例如,如果输入为“/Date(-62135596800000+0100)/”则
第0组(整场比赛)将是“/Date(-62135596800000+0100)/”和组1将为-62135596800000JavaScript正则表达式用斜杠(
/…/
)括起来,除非您使用RegExp()
构造函数,该构造函数需要字符串(“…
)。你不能只在你的脚本中间键入随机字符;P