Grails 正则表达式校验

假设我们需要匹配下面的正则表达式:/^.*[A-Za-z0-9].*$/Grails 的代码如下:[code]import java.util.regex.Matcher
import java.util.regex.Pattern

def pattern = ~/^.[A-Za-z0-9].$/

assert pattern.matcher(“abc”).matches()
assert pattern.matcher(“ABC”).matches()
assert pattern.matcher(“abc123”).matches()
assert pattern.matcher(“123”).matches()
assert pattern.matcher(“abc!”).matches()
assert pattern.matcher(“!abc”).matches()
assert pattern.matcher(“1!bc”).matches()
assert pattern.matcher(“!.~”).matches() == false[/code]代码解释如下:

[table]
[tr][td=111]/
[/td][td=158][font=微软雅黑] 正则表达式开始符[/font]
[/td][/tr]
[tr][td]^
[/td][td][font=微软雅黑] 字符串开始[/font]
[/td][/tr]
[tr][td].*
[/td][td][font=微软雅黑]任何字符 (0 或多次)[/font]
[/td][/tr]
[tr][td][A-Za-z0-9]
[/td][td][font=微软雅黑]至少一个字母或者数字[/font]
[/td][/tr]
[tr][td].*
[/td][td][font=微软雅黑]任何字符 (0 或多次)[/font]
[/td][/tr]
[tr][td]$
[/td][td][font=微软雅黑]字符串结束[/font]
[/td][/tr]
[tr][td]/
[/td][td][font=微软雅黑]正则表达式结束符[/font]
[/td][/tr]
[/table]