如何在javascript循环中使用正则表达式匹配组中的数字范围?
我希望使用正则表达式中的数字查找并运行一个循环,使用第一个数字作为起点,最后一个数字作为终点,并仅使用javascript核心对象、方法或函数编写一些文本。 假设我有一个字符串数组,其形式为如何在javascript循环中使用正则表达式匹配组中的数字范围?,javascript,regex,Javascript,Regex,我希望使用正则表达式中的数字查找并运行一个循环,使用第一个数字作为起点,最后一个数字作为终点,并仅使用javascript核心对象、方法或函数编写一些文本。 假设我有一个字符串数组,其形式为''','',依此类推。使用此数组,我想编写如下内容: 预期产出: rid"4"/<disp-formula id="deqn4-9"> rid"5"/<disp-formula id="deqn4-9"> rid"6"/<disp-formula id="deqn4-9">
''','',依此类推。
使用此数组,我想编写如下内容:
预期产出:
rid"4"/<disp-formula id="deqn4-9">
rid"5"/<disp-formula id="deqn4-9">
rid"6"/<disp-formula id="deqn4-9">
rid"7"/<disp-formula id="deqn4-9">
rid"8"/<disp-formula id="deqn4-9">
rid"9"/<disp-formula id="deqn4-9">
rid"15"/<disp-formula id="deqn15-17">
rid"16"/<disp-formula id="deqn15-17">
rid"17"/<disp-formula id="deqn15-17">
rid“4”/
摆脱“5”/
摆脱“6”/
摆脱“7”/
摆脱“8”/
摆脱“9”/
摆脱“15”/
摆脱“16”/
摆脱“17”/
基本上,它从数组中获取数字范围,并使用该范围内的每个数字,然后以上述方式写入。
我尝试了以下代码:
var myString = ['<disp-formula id="deqn4-9">', '<disp-formula id="deqn15-17">'];
var myRegexp = /(\d+)-(\d+)/g;
my_arr = myRegexp.exec(myString);
while (my_arr != null) {
var a1 = my_arr[0];
var xs = a1.split("-");
var new1=xs[0];
var new2=xs[1];
for (var i=new1; i<=new2; i++){
console.log('rid"'+i+'"/'+myString[0]);
}
var a2 = my_arr[1];
var ys = a2.split("-");
var _new1=xs[0];
var _new2=xs[1];
for (var j=_new1; j<=_new2; j++){
console.log('rid"'+j+'"/'+myString[1]);
}
my_arr = myRegexp.exec(myString);
}
var myString=['','';
var myRegexp=/(\d+)-(\d+)/g;
myu arr=myRegexp.exec(myString);
while(my_arr!=null){
var a1=我的arr[0];
var xs=a1.拆分(“-”);
var new1=xs[0];
var new2=xs[1];
对于(var i=new1;i我修改了您的代码以便工作
var myString=['','','','';
var myRegexp=/(\d+)-(\d+)/g;
myu arr=myRegexp.exec(myString);
var-idx=0;
while(my_arr!=null){
var a1=我的arr[0];
var xs=a1.拆分(“-”);
var new1=parseInt(xs[0]);
var new2=parseInt(xs[1]);
对于(var i=new1;i预期的输出是什么?@marvel308预期的输出是有问题的第一个代码块。我已经修改了这个问题。谢谢,最后一件事,我如何使用document.write逐行而不是console.log来写这些找到的项?当数组中有字符串时,这不起作用,例如,
你说的是什么意思rray like?如果var myString=['','','','',];
那么结果就不会显示rid“99”/rid“100”/rid“999”/rid“1000”/rid“1001”/
rid"4"/<disp-formula id="deqn4-9">
rid"5"/<disp-formula id="deqn4-9">
rid"6"/<disp-formula id="deqn4-9">
rid"7"/<disp-formula id="deqn4-9">
rid"8"/<disp-formula id="deqn4-9">
rid"9"/<disp-formula id="deqn4-9">
rid"4"/<disp-formula id="deqn15-17">
rid"5"/<disp-formula id="deqn15-17">
rid"6"/<disp-formula id="deqn15-17">
rid"7"/<disp-formula id="deqn15-17">
rid"8"/<disp-formula id="deqn15-17">
rid"9"/<disp-formula id="deqn15-17">
rid"15"/<disp-formula id="deqn4-9">
rid"16"/<disp-formula id="deqn4-9">
rid"17"/<disp-formula id="deqn4-9">
rid"15"/<disp-formula id="deqn15-17">
rid"16"/<disp-formula id="deqn15-17">
rid"17"/<disp-formula id="deqn15-17">