10、正则表达式
l Groovy支持使用~”...”本地表示的正则表达式,另外还支持“=~”操作符(创建Matcher)
import java.util.regex.Matcher
import java.util.regex.Pattern
// same as assert ("cheesecheese" =~ "cheese").find()
assert "cheesecheese" =~ "cheese"
// lets create a regex Pattern
pattern = ~"a*b"
assert pattern instanceof Pattern
assert pattern.matcher("aaaab").matches()
// lets create a Matcher
matcher = "cheesecheese" =~ "cheese"
assert matcher instanceof Matcher
answer = matcher.replaceAll("edam")
assert answer == "edamedam"
l Matcher缺省会调用find()方法返回boolean值,因此可以使用=~与Perl的=~操作符的简单使用保持一致
l 对于上面的模式匹配的例子主要是演示Pattern的用法,其实可以简化为
assert ("aaaab" =~ "a*b").matches()