我想检查名称字段是否满足这些要求:
-必须包含英文字母 -可以包含数字/点/连字符/空格
LuckStar12 : valid Batman : valid LuckStar-12 : valid LuckStar.1 - 2 : valid Luck Star 5 : valid 21212 : not valid cos it doesn't contain any English Alphabets autó : not valid cos it contain "ó" ----- : not valid cos it doesn't contain any English Alphabets
这个“[a-zA-Z0-9\\s.-]+”
是检查名称字段是否有属于这些英文字母/数字/点/连字符/空格的字符。但是,它并不强制“必须包含英文字母”。
我尝试了 (?=.*[a-zA-Z])[0-9\\s.-]
但不起作用。
所以
用于检查“必须包含英文字母并且可以包含数字/点/连字符/空格”的 Java 正则表达式是什么?
最佳答案
您可以使用lookahead assertion :
^(?=.*[a-zA-Z])[a-zA-Z0-9. -]*$
关于java - 用于检查 "Must contain English Alphabets & Can contain either Digit/Dot/Hyphen/Space"的 Java 正则表达式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22522256/