def host = /\/\/([a-zA-Z0-9-]+(\.[a-zA-Z0-9-])*?)(:|\/)/
assertHost 'http://a.b.c.d:8080/bla', host, 'a.b.c.d'
def assertHost (candidate, regex, expected){
candidate.eachMatch(regex){assert it[1] == expected}
}
Я знаю, что приведенный выше код подтверждает мои данные!Но в строке 4 внутри замыкания магическая переменная (it) представляется в массиве!Я немного запутался в этом.Как это работает?
Как это работает в Groovy (проиллюстрируем простым кодом)?