我希望能够在给定的正则表达式捕获组中找到最佳匹配。 例子: 正则表达式:(AB|ABC) 样本:ABCDEF 结果:AB 但是我想找到ABC(选项列表中的最佳匹配)。 如何做到这一点?(除了交换组中的两个替代项之外) 感谢任何想法!
尝试按顺序指定最佳匹配项(例如,优先匹配最长的字符串)。许多正则表达式引擎在其“贪婪模式”下更喜欢从左侧开始匹配。只有POSIX正则表达式强制返回最长匹配的备选项: http://www.regular-expressions.info/alternation.html