使用匹配约束的grails验证 - 正则表达式

时间:2012-03-12 09:30:35

标签: regex grails grails-constraints

我真的很难用grails中的匹配限制,我很新。我希望我的字段只接​​受的是具有电话号码格式的输入,如02-3546352,其中(区号) - (电话号码)。除了数字和短划线之外的其他字符不被接受。是否可以过滤我的输入,就像我想要使用正则表达式发生的那样? 请帮忙。感谢您分享您的知识。

2 个答案:

答案 0 :(得分:7)

是的,它是\d+\-\d+。如果您知道区号和电话中的确切数字,例如2表示区域,7表示实际数字,那么它将是\d{2}\-\d{7}

或完整示例:

static constraints = {
   phone(matches: '\\d{2}\\-\\d{7}')
}

答案 1 :(得分:4)

假设这是你想要匹配的唯一模式......

这样的事情:^\d{2}-\d{7}$应匹配以任意两个数字(^)开头的任何字符串(\d{2}),后跟短划线(-),哪个是然后是7位数字(\d{7}),最后是字符串的结尾($)。

请查看this教程以获取更多信息。