就像是:
def match = "John 19" =~ /(&name&)\w+ (&age&\d+)/ def name = match.name def age = match.age
有没有一个groovy语法允许这样的东西(而不是我构成的虚构和运算符?
解决方法
假设您在Java 7上使用,您可以执行以下操作:
def matcher = 'John 19' =~ /(?<name>\w+) (?<age>\d+)/ if( matcher.matches() ) { println "Matches" assert matcher.group( 'name' ) == 'John' assert matcher.group( 'age' ) == '19' } else { println "No Match" }
如果你还不是java 7,那么你需要一个third party regex library