1、判斷賬號必須為英文,不能有其他符號,限制長度範圍6-12之間
//(pattern\compile\case_insensitive\matcher\find()\group())
parrern pp=pattern.
compile
("^[a-z]$"
,pattern.case_insensitive\trim)
; matcher matcher=pp.
matcher
("jack"
.trim()
);system.out.
println
(matcher.
find()
);
2、判斷乙個賬號名稱,必須字母開頭,可以有數字,長度必須在6位以上
system.out.
println
("dafe51sf"
.matches
("^[a-z][a-za-z0-9]$"))
;
3、要求使用者姓名,要麼是中文,要麼是英文,不可以中英文混合。
system.out.
println(""
.matches
("^[\\u4e00-\\u9fa5]+ | [a-za-z]+$"))
;
4、取出字串中的所有數字
string ss=
"f564a456aasg5a4s66a3dag"
;// \\d+ 改為 \\d 為乙個數字乙個數字輸出
pattern p3= pattern.
compile
("\\d+");
matcher m3=p3.
matcher
(ss)
;while
(m3.
find()
)
5、取出字串中的所有數字並求和
string sss=
"f564a456aasg5a4s66a3dag"
; pattern p4= pattern.
compile
("\\d+");
matcher m4=p4.
matcher
(sss)
;int sum=0;
while
(m4.
find()
) system.out.
println
(sum)
;
6、字串中表示式運算:123-45-67+89;
string ssss =
"123-45-67+89"
; pattern ppp=pattern.
compile
("[0-9]+|-\\d+");
matcher mmm=ppp.
matcher
(ssss)
;int sum2=0;
while
(mmm.
find()
) system.out.
printf
("%s=%d"
,ssss,sum2)
;
**
7、給出1-9數字組成的字串,提取並且排列組合加減法得數為100**
public
static
void
main
(string[
] gars)
; random random=
newrandom()
; stringbuilder s=
newstringbuilder()
;int n=0;
while
(true
) s.
("9");
if(check
(s.tostring()
))s.
delete(0
, s.
length()
);if(n>=5)
break;}
}//判斷方法
public
static
boolean
check
(string str)
if(sum ==
100)
flag =
true
;return flag;
}
正規表示式簡單判斷
def ismatch text,pattern 判斷pattern是否為空 ifnot pattern 如果pattern為空,判斷text是否為空,如果text也為空,則返回匹配成功,text不為空,則返回失敗 return not text bool text 表示text是否為空,後半句表示...
密碼正規表示式
1 密碼由6 32位字母 數字或下劃線構成 2 至少需要一位小寫字母 3 至少需要一位大寫字母 4 至少需要一位數字。string password password system.out.println password null password.length 6 password.length...
使用正規表示式判斷密碼強弱
def password level password weak re.compile r d a za z w level weak weak.match password level middle re.match r 0 9 w a za z a za z w d w d w password...