ฉันมีโค้ดเล็ก ๆ นี้
String[] words = {"{apf","hum_","dkoe","12f"};
for(String s:words)
{
if(s.matches("[a-z]"))
{
System.out.println(s);
}
}
ควรพิมพ์
dkoe
แต่มันไม่มีอะไรพิมพ์ !!
matches
จะมองหาสิ่งที่เกิดขึ้น[a-z]
แล้วมันควรจะตรงกับพวกเขาทั้งหมดหรือไม่ ฉันจะไม่คาดหวังว่าmatches
จะตรวจสอบตัวละครแต่ละตัวทุกตัวกับ regex
matches
วาง ^ ไว้ที่จุดเริ่มต้นและ $ ที่ท้าย regexes สำหรับคุณ ดังนั้นmatches("[a-z]")
จริง ๆ แล้วจะค้นหา / ^ [az] $ / แทน