在Javascript中组合两个正则表达式
我需要一个正则表达式,在以下场景中提取作者在Javascript中组合两个正则表达式,javascript,regex,Javascript,Regex,我需要一个正则表达式,在以下场景中提取作者 作者就主题11-10-2018给收件人的信 作者关于主题10-11-2018的信函 我尝试了以下步骤,这就是我所拥有的: let commaRegex = new RegExp(/(?<=from) (.+?),/, 'gi','$1'); let fromToRegex = new RegExp(/(?<=from) (.+?) (?=to)/, 'gi','$1'); let combinedRegex = new RegExp(co
作者就主题11-10-2018给收件人的信
作者关于主题10-11-2018的信函
我尝试了以下步骤,这就是我所拥有的:
let commaRegex = new RegExp(/(?<=from) (.+?),/, 'gi','$1');
let fromToRegex = new RegExp(/(?<=from) (.+?) (?=to)/, 'gi','$1');
let combinedRegex = new RegExp(commaRegex + '|' + fromToRegex);
let author = document.getElementById('userInput').value.match(combinedRegex);
console.log(author)
让commaRegex=new RegExp(/(?无需“自动”组合它们,只需对最后一部分使用or运算符:
(?<=from )(.+?)(?=,| to)
然后从匹配项中选择第一组:.match(…)[1]
无需“自动”组合它们,只需对最后一部分使用or运算符:
(?<=from )(.+?)(?=,| to)
然后从匹配项中选择第一组:.match(…)[1]
除了georg提供的解决方案之外,以防您想要组合其他两个不容易被一个替代的组:
您必须添加源,而不是整个对象:
让commaRegex=new RegExp(/(?除了georg提供的解决方案之外,以防您想要将其他两个不太容易被一个替代的组合起来:
您必须添加源,而不是整个对象:
让commaRegex=new RegExp(/(?你是否正确地阅读了这些方法?他们使用的是regex.source
-你也厌倦了使用这些方法吗?你想得到哪个词?@IslamElshobokshy我试图得到作者的名字,这个名字总是会有所不同,但会介于“from”和“to”或“from”和“a”之间,“你是否正确地阅读了这些方法?”他们告诉我们eregex.source
-你也厌倦了使用这个词吗?你想得到哪个词?@IslamElshobokshy我想得到作者的名字,这个名字总是会有所不同,但会介于“from”和“to”之间,或者介于“from”和“a”之间