什么是以下Perl代码的Groovy等价物?
my $txt = "abc : groovy : def";
if ($txt =~ / : (.+?) : /) {
my $match = $1;
print "MATCH=$match\n";
# should print "MATCH=groovy\n"
}
Run Code Online (Sandbox Code Playgroud)
我知道有多种方法可以做到这一点(包括常规的Java方式) - 但是这样做的"Groovy方式"是什么?
这是一种方法,但它感觉有点笨拙 - 特别是数组符号(m[0][1])感觉有点奇怪.有更好的方法吗?如果没有 - 请描述背后的逻辑m[0][1].
def txt = "java : groovy : grails"
if ((m = txt =~ / : (.+?) :/)) {
def match = m[0][1]
println "MATCH=$match"
}
Run Code Online (Sandbox Code Playgroud)