viernes, enero 24, 2014

Groovy regexp: Capturing inside curly brackets

Right to the snippet, :D
import java.util.regex.Matcher
import java.util.regex.Pattern
//Tring to capture whats inside the curly brackets
String input="xxx{var23.ID}yyy{something here.some more}--{}"
//The group is everything but a '}'
def pattern = ~/\{([^\}]*)\}/
def result=pattern.matcher(input)
result.each{it->
println it
}
//Output:
//[{var23.ID}, var23.ID]
//[{something here.some more}, something here.some more]
//[{}, ]