คลาส java.util.regex.Matcher แสดงถึงเอ็นจิ้นที่ดำเนินการจับคู่ต่างๆ ไม่มีตัวสร้างสำหรับคลาสนี้ คุณสามารถสร้าง/รับวัตถุของคลาสนี้โดยใช้เมธอดmatch() ของคลาส java.util.regex.Pattern
usePattern() เมธอดของคลาส Matcher ยอมรับอ็อบเจ็กต์ Pattern ที่แสดงรูปแบบ regex ใหม่และใช้เพื่อค้นหารายการที่ตรงกัน
ตัวอย่าง
<ก่อนหน้า> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; คลาสสาธารณะ UsePatternExample { โมฆะสาธารณะหลัก (สตริง [] args) { Scanner sc =สแกนเนอร์ใหม่ (ระบบ .ใน); System.out.println("ป้อนข้อความ:"); อินพุตสตริง =sc.nextLine(); สตริง regex ="[#%&*]"; //การสร้างวัตถุรูปแบบ Pattern pattern =Pattern.compile(regex); //การสร้าง Matcher วัตถุ Matcher matcher =pattern.matcher (อินพุต); จำนวนเต็ม =0; ในขณะที่ (matcher.find ()) { นับ ++; } //กำลังดึงรูปแบบที่ใช้ System.out.println("The are "+count+" อักขระพิเศษ [# % &*] ในข้อความที่กำหนด"); //สร้างแพทเทิร์นให้รับ 5 t 6 ตัวอักษร Pattern newPattern =Pattern.compile("\\A(?=\\w{6,15}\\z)"); //สลับไปยังตัวจับคู่รูปแบบใหม่ =matcher.usePattern(newPattern); if(matcher.find()) { System.out.println ("ข้อมูลที่ป้อนมีอักขระ 6 ถึง 15 ตัว"); } อื่น { System.out.println ("ข้อมูลที่ป้อนไม่มีอักขระ 6 ถึง 15 ตัว"); } }}ผลลัพธ์
ป้อนข้อความที่ป้อน:#*mypassword&มีอักขระพิเศษ 3 ตัว [# % &*] ในข้อความที่กำหนด!!mypassword!การป้อนที่กำหนดไม่มีอักขระ 6 ถึง 15 ตัว