加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在Groovy正则表达式模式匹配中是否有命名组?

发布时间:2020-12-14 16:37:20 所属栏目:大数据 来源:网络整理
导读:就像是: def match = "John 19" =~ /(name)w+ (aged+)/def name = match.namedef age = match.age 有没有一个groovy语法允许这样的东西(而不是我构成的虚构和运算符? 解决方法 假设您在Java 7上使用,您可以执行以下操作: def matcher = 'John 19' =~ /
就像是:

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读