我目前正在使用java正则表达式尝试匹配具有以下条件的用户名:
我知道从^ [A-Za-z]开始,长度可以用{0,7}来管理,但我不知道怎么做,所以任何数字都是后缀。
感谢您的帮助。
答案 0 :(得分:4)
要使用正则表达式检查字符串的长度,您可以使用look ahead机制并在正则表达式的开头添加(?=^.{1,8}$)
。
所以你的正则表达式看起来像
(?=^.{1,8}$)[A-Za-z]+\\d*
您也可以使用length()
方法(如
if(yourString.matches("[A-Za-z]+\\d*") && yourString.length()<=8){//...
//you dont need to check if yourString.length()>=1 since [A-Za-z]+ makes string
//to contain at least one character