Javascript js regexp-组优先级
比如说,有多个正则表达式Javascript js regexp-组优先级,javascript,regex,grouping,Javascript,Regex,Grouping,比如说,有多个正则表达式 + (?:BBB)?CCC 在单个表达式中组合为组-/^(第一)(第二)$/ 两组人不应该互相“了解”(意思是——我不能改变他们的表达方式) 目前的结果是: ["AAA BBB CCC", "AAA BBB", "CCC"] 预期结果: ["AAA BBB CCC", "AAA", "BBB CCC"] 如何对组进行优先级排序,使BBB最终位于第二个组中?通过在+旁边添加不情愿的量词?来创建第一个+(位于捕获组中) ^(.+?) ((?:BBB )?CCC)$
+
(?:BBB)?CCC
/^(第一)(第二)$/
两组人不应该互相“了解”(意思是——我不能改变他们的表达方式)
目前的结果是:
["AAA BBB CCC", "AAA BBB", "CCC"]
预期结果:
["AAA BBB CCC", "AAA", "BBB CCC"]
如何对组进行优先级排序,使
BBB
最终位于第二个组中?通过在+
旁边添加不情愿的量词?
来创建第一个+
(位于捕获组中)
^(.+?) ((?:BBB )?CCC)$
^(.+?) ((?:BBB )?CCC)$
> /^(.+?) ((?:BBB )?CCC)$/.exec('AAA BBB CCC');
[ 'AAA BBB CCC',
'AAA',
'BBB CCC',
index: 0,
input: 'AAA BBB CCC' ]