Javascript 正则表达式
我有下一个字符串:Javascript 正则表达式,javascript,regex,Javascript,Regex,我有下一个字符串: 1 2 OR 3 4 OR 5 OR 6 7 OR 8 我需要根据或使用regexps在不同部分将其分开,例如,从这一行我需要得到下一个: 1 2 OR 3 4 OR 5 OR 6 8 OR 8 //1 (2 OR 3) (4 OR 5 OR 6) (7 OR 8) 怎么做-谢谢!) 抱歉,但忘了提及,这里不仅可以是数字:第一、第二、第三、第四、第五、第六、第七或八,您可以使用: x.replace(/(\d+)\s+(\d+)/g, "$1\n$2"); 其中x是“
1 2 OR 3 4 OR 5 OR 6 7 OR 8
我需要根据或使用regexps在不同部分将其分开,例如,从这一行我需要得到下一个:
1
2 OR 3
4 OR 5 OR 6
8 OR 8
//1 (2 OR 3) (4 OR 5 OR 6) (7 OR 8)
怎么做-谢谢!)
抱歉,但忘了提及,这里不仅可以是数字:第一、第二、第三、第四、第五、第六、第七或八,您可以使用:
x.replace(/(\d+)\s+(\d+)/g, "$1\n$2");
其中x
是“12或34或5或67或8”
输出将是:
1
2 OR 3
4 OR 5 OR 6
7 OR 8
您可以使用:
x.replace(/(\d+)\s+(\d+)/g, "$1\n$2");
其中x
是“12或34或5或67或8”
输出将是:
1
2 OR 3
4 OR 5 OR 6
7 OR 8
这个简单的正则表达式应该可以工作:
var str = '1 2 OR 3 4 OR 5 OR 6 7 OR 8';
str.match(/\w+( OR \w+)*/g);
这个简单的正则表达式应该可以工作:
var str = '1 2 OR 3 4 OR 5 OR 6 7 OR 8';
str.match(/\w+( OR \w+)*/g);
使用一个正则表达式,该表达式匹配紧跟在
或之后的数字和另一个数字:
var s = '1 2 OR 3 4 OR 5 OR 6 7 OR 8';
var re = /\d+(?: OR \d+)*/g;
var m;
while ((m = re.exec(s)) != null) {
console.log(m[0]);
}
演示:使用一个正则表达式,该表达式匹配紧跟在或
之后的数字和另一个数字:
var s = '1 2 OR 3 4 OR 5 OR 6 7 OR 8';
var re = /\d+(?: OR \d+)*/g;
var m;
while ((m = re.exec(s)) != null) {
console.log(m[0]);
}
演示:这可能是您需要的:
(?:^|(?<=\d ))(\d+(?: +OR +\d+)*)(?=(?: +\d|$))
这可能是您所需要的:
(?:^|(?<=\d ))(\d+(?: +OR +\d+)*)(?=(?: +\d|$))
我试过/([^\s”]+|“[^”]*”([^\s”]+|“[^”]*”)+/iI试过/([^\s”]+|“[^”]*”([^\s”]+|“[^”]*”)+/iSorry,但忘了提到,这里不能只有数字:第二位、第三位、第五位、第六位或第七位或第四位"? 你这是什么意思?您能提供一个例子吗?@Simha:Aha,然后将正则表达式中的\d
更改为[^]
,以匹配任何非空格字符,而不仅仅是数字。演示:抱歉,但忘了提到,这里不能只有数字:第一个第二个或第三个第四个或第五个或第六个第七个或eigths“也不能只有数字”?这是什么意思?你能举个例子吗?@Simha:Aha,然后将正则表达式中的\d
更改为[^]
匹配任何非空格字符,而不仅仅是数字。演示:抱歉,但忘了提及,此处不能只有数字:第1秒或第3th-forth或第5th或第6th-seven或eigthSorry,但忘了提及,此处不能只有数字:第1秒或第3th-forth或第5th或第6th-seven或eigthSorry,但忘了提及ion,这里不能是唯一的数字:第一第二或第三第四或第五或第六第七或eigthSorry,但忘了提及,这里不能是唯一的数字:第一第二或第三第四或第五或第六第七或eigthSorry,但忘了提及,这里不能是唯一的数字:第一第二或第三第四或第五或第六第七或e对不起,但忘了提一下,这里不能只有数字:第一、第二、第三、第四、第五、第六、第七或第八