在javascript中使用正则表达式获得多个结果
我有这个正则表达式在javascript中使用正则表达式获得多个结果,javascript,Javascript,我有这个正则表达式 let paragraph = "112-39-8552 asdasdas 123-58-3695"; let result = paragraph.match(/(\d{3}\-\d{2}-\d{4})+/); console.log(result); 结果我会得到这个 [ '112-39-8552', '112-39-8552', index: 0, input: '112-39-8552 asdasdas 123-58-3695', groups:
let paragraph = "112-39-8552 asdasdas 123-58-3695";
let result = paragraph.match(/(\d{3}\-\d{2}-\d{4})+/);
console.log(result);
结果我会得到这个
[
'112-39-8552',
'112-39-8552',
index: 0,
input: '112-39-8552 asdasdas 123-58-3695',
groups: undefined
]
它只能找到第一种模式,而不能找到第二种模式
如何在搜索结果中包含
123-58-3695
?使用g
标志
global的值是布尔值,如果使用了“g”标志,则为true;否则,错误。“g”标志表示应针对字符串中所有可能的匹配项测试正则表达式。同时定义为全局(“g”)和粘性(“y”)的正则表达式将忽略全局标志并执行粘性匹配
您只需将“g”标志传递给正则表达式,如:
让段落=“112-39-8552 asdasdas 123-58-3695”;
让结果=段落匹配(/(\d{3}-\d{2}-\d{4})+/g);
控制台日志(结果)代码>
let result = paragraph.match(/(\d{3}\-\d{2}-\d{4})+/g);