Что такое Groovy эквивалент следующего кода Perl?
my $txt = "abc : groovy : def";
if ($txt =~ / : (.+?) : /) {
my $match = $1;
print "MATCH=$match\n";
# should print "MATCH=groovy\n"
}
Я знаю, что есть более чем один способ сделать это (в том числе обычный Java-способ), но что такое Groovy способ сделать это?
Это один из способов сделать это, но он чувствует себя немного неуклюжим - особенно обозначение массива (m[0][1]
), которое немного странно. Есть ли лучший способ сделать это? Если нет - пожалуйста, опишите логику m[0][1]
.
def txt = "java : groovy : grails"
if ((m = txt =~ / : (.+?) :/)) {
def match = m[0][1]
println "MATCH=$match"
}