正则表达式检查在JavaScript中返回false
我正在尝试为以下模式创建正则表达式:- 12344321;5678,8765;1234,4321;5678,8765;1234,4321;5678,8765;正则表达式检查在JavaScript中返回false,javascript,regex,Javascript,Regex,我正在尝试为以下模式创建正则表达式:- 12344321;5678,8765;1234,4321;5678,8765;1234,4321;5678,8765; /[0-9]+,[0-9]+/g或/\d+,\d+/g在JavaScript中似乎不起作用 输出:- 假的 函数myFunction(){ var str=“12344321;12344321;12344321;12344321;”; var patt=newregexp(/[0-9]+,[0-9]+;/g); var res=部分试验
/[0-9]+,[0-9]+/g
或/\d+,\d+/g
在JavaScript中似乎不起作用
输出:-
假的
函数myFunction(){
var str=“12344321;12344321;12344321;12344321;”;
var patt=newregexp(/[0-9]+,[0-9]+;/g);
var res=部分试验(str);
document.getElementById(“demo”).innerHTML=res;
}
myFunction()
您只需要一次更正。i、 例如,将全局标志g
作为第二个参数传递给RegExp构造函数
function myFunction() {
var str = "1234,4321;1234,4321;1234,4321;1234,4321;";
var patt = new RegExp(/[0-9]+,[0-9]+;/, 'g');
var res = patt.test(str);
document.getElementById("demo").innerHTML = res;
}
使用RegEx/^([0-9]+:[0-9]+,)*$/解决了这个问题。()star确保每次图案都匹配
function myFunction() {
var str = "1234,4321;1234,4321;1234,4321;1234,4321;";
var patt = new RegExp(/^([0-9]+:[0-9]+,)*$/);
var res = patt.test(str);
document.getElementById("demo").innerHTML = res;
}
myFunction()
<div id="demo"></div>
函数myFunction(){
var str=“12344321;12344321;12344321;12344321;”;
var patt=newregexp(/^([0-9]+:[0-9]+,)*$/);
var res=部分试验(str);
document.getElementById(“demo”).innerHTML=res;
}
myFunction()
请定义“似乎不起作用”。test返回一个布尔值
,指示是否存在匹配项。它不会返回实际的匹配项。使用String.match()
,因为模式总是以结尾代码>?OP的代码很好。保留全局标志