我有一个条件匹配分组正则表达式,例如/(sun|\bmoon)/
。当我访问字符串中的匹配项时,我希望能够看到导致匹配的表达式。
let regex = /(sun|\bmoon)/
let match = regex.exec('moon')
// return '\bmoon' ??
这可能吗?
JavaScript 的 RegExp 当前没有方法来显示正则表达式模式的哪一部分匹配。我不相信这会很快(甚至永远)实施,但这是我自己的观点。相反,您可以使用两个单独的模式,如下面的代码片段所示。
let regexes = [/sun/, /\bmoon/]
let str = 'moon'
regexes.forEach(function(regex) {
let m = regex.exec(str)
if (m == null) return
console.log(`${regex}: ${m}`)
0})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)