草庐IT

greedier

全部标签

java - 正则表达式 : who's greedier?

我主要关心的是Java风格,但我也希望获得有关其他方面的信息。假设您有一个这样的子模式:(.*)(.*)虽然不是很有用,但假设这两个捕获组(例如,\1和\2)是与反向引用相匹配的更大模式的一部分这些团体等。所以两者都是贪婪的,因为他们试图尽可能多地捕获,只有在必要时才减少。我的问题是:谁更贪婪?\1是否获得第一优先权,只有在必要时才给予\2它的份额?关于:(.*)(.*)(.*)让我们假设\1确实获得第一优先权。假设它太贪心了,然后吐出一个字符。谁先得到它?它总是\2还是可以是\3?让我们假设\2被\1拒绝。如果这还不行,现在谁吐出来了?是\2吐到\3,还是\1先吐另一个到\2?奖金问