我对 grails 很陌生,我在使用正则表达式进行匹配验证时遇到问题。我想要发生的是我的字段可以接受字母数字和特定特殊字符的组合,如句点 (.)、逗号 (,) 和破折号 (-),它可以接受数字 (099) 或仅字母 (alpha),但它不接受只有特殊字符(“.-”)的输入。是否可以使用正则表达式过滤这种输入?请帮忙。感谢您分享你的知识。
问问题
2300 次
2 回答
4
^[0-9a-zA-Z,.-]*?[0-9a-zA-Z]+?[0-9a-zA-Z,.-]*$
meaning:
/
^ beginning of the string
[...]*? 0 or more characters from this class (lazy matching)
[...]+? 1 or more characters from this class (lazy matching)
[...]* 0 or more characters from this class
$ end of the string
/
于 2012-03-08T09:15:43.853 回答
1
我认为您可以将其与这样的正则表达式匹配:
".*[0-9a-zA-Z.,-]+.*"
这意味着:
“。” 以任何字符开头
"*"有零个或多个这些字符
"[0-9a-zA-Z.,-]" 具有 0-9、az 等范围内的字符或 . 或 , 或 -
"+" 具有一个或多个此类字符(因此必须在此集合中具有一个)
“。” 以任意字符结尾
"*" 有零个或多个这些字符
这对我来说没问题,希望它有帮助!
于 2012-03-08T08:45:24.703 回答