我想从字符串中得到数字24或99以及接下来的六个数字。例如,想象一下后面的字符串:
anytext 24 824 750 anytext 99 659 440 anytext 24 234 423 24743534 anytext
我得到的是:
24824750 99659440 24234423 24743534
答案 0 :(得分:1)
var r=/(24|99)(\s*[0-9]){6}/g;
var s='anytext 24 824 750 anytext 99 659 440 anytext 24 234 423 24743534 anytext';
var m;
while(true) {
m = r.exec(s);
if(!m) break;
console.log(m[0].replace(/\s/g,''));
}
如果您想要的话,可以将\s
更改为空格。
答案 1 :(得分:0)
另一种方法(ES6代码):
var txt = 'anytext 24 824 750 anytext 99 659 440 anytext 24 234 423 24743534 anytext';
var res = txt.match(/(24|99)(\s*\d){6}/g).map( m => m.replace(/\s+/g, '') );
console.log(res);

答案 2 :(得分:0)
您可以执行以下操作
var str = "anytext 24 824 750 anytext 99 659 440 anytext 24 234 423 24743534 anytext",
result = str.replace(/\s+/g,"")
.match(/(?:24|99)\d{6}/g);
console.log(result);