Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

คลาสอักขระ:การปฏิเสธ - นิพจน์ทั่วไปของ Java


คลาสอักขระในนิพจน์ทั่วไป Java ถูกกำหนดโดยใช้วงเล็บเหลี่ยม "[ ]" นิพจน์ย่อยนี้จับคู่อักขระตัวเดียวจากอักขระที่ระบุหรือชุดของอักขระที่เป็นไปได้

ตัวอย่างเช่น นิพจน์ทั่วไป [abc] จะจับคู่อักขระตัวเดียว a หรือ b หรือ c ในทำนองเดียวกัน "[a-z]" จะจับคู่อักขระตัวเดียวจาก a ถึง z

ในทำนองเดียวกัน ตัวแปรเชิงลบของคลาสอักขระถูกกำหนดเป็น "[^ ]" (โดยมี ^ อยู่ในเครื่องหมายปีกกา) ซึ่งจะจับคู่อักขระตัวเดียวที่ไม่อยู่ในที่ระบุหรือชุดของอักขระที่เป็นไปได้

ตัวอย่างเช่น นิพจน์ทั่วไป [^abc] จะจับคู่อักขระตัวเดียว ยกเว้น a หรือ b หรือ c ในทำนองเดียวกัน "[^a-z]" จะจับคู่อักขระยกเว้นตัวอักษรจาก a ถึง z

ตัวอย่างที่ 1

<ก่อน> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; คลาสสาธารณะ RegexExample1 { โมฆะสาธารณะหลัก (สตริง [] args) { Scanner sc =สแกนเนอร์ใหม่ (ระบบ .ใน); System.out.println("ป้อนข้อความ:"); อินพุตสตริง =sc.nextLine(); สตริง regex ="[^aeiou]"; //การสร้างวัตถุรูปแบบ Pattern pattern =Pattern.compile(regex); //จับคู่รูปแบบที่คอมไพล์แล้วใน String Matcher matcher =pattern.matcher(input); จำนวนเต็ม =0; ในขณะที่ (matcher.find()) { นับ ++; } System.out.println("จำนวนอักขระที่ไม่ใช่สระ :"+จำนวน); }}

ผลลัพธ์

ป้อนข้อความ:sample dataNumber of non-vowel characters :7