Groovy抽取子串

Groovy抽取子串,groovy,Groovy,下面是我的绳子 author = "59612934+firstname-lastname-ok@users.noreply.github.com" 如何从上面的字符串中仅获取firstname和lastname。lastname后面的字符串将始终为-ok 期望输出: author = "firstname.lastname" 我会用正则表达式替换它,比如 String author = "59612934+firstname-lastnam

下面是我的绳子

author = "59612934+firstname-lastname-ok@users.noreply.github.com"
如何从上面的字符串中仅获取firstname和lastname。lastname后面的字符串将始终为
-ok

期望输出:

author = "firstname.lastname"

我会用正则表达式替换它,比如

String author = "59612934+firstname-lastname-ok@users.noreply.github.com"
assert 'firstname.lastname' == author.replaceFirst( /\d+\+([^-]+)-([^-]+)-ok.*/, '$1.$2' )