我正在使用此正则表达式^(?:foo|bar)+|(.+)$
来捕捉与“foo”#39;不同的字符串或者' bar'但它只在foo或bar之后捕获字符串而不是在开始时。例如,它会在字符串ba
中捕获foobarfooba
,但不会在字符串ba
中捕获bafoobarfoo
。
答案 0 :(得分:1)
因为您使用了线锚的开头。删除行锚的开头也不适合您。所以我建议你使用下面的正则表达式。
var s = "bafoobar";
var re = /foo|bar|((?:(?!foo|bar).)+)/gm;
alert(re.exec(s)[1])