quantifiers ที่โลภโดย Java ช่วยให้คุณสามารถจับคู่นิพจน์ได้หลายรายการ ที่ไหน
-
Exp{n} กระตุ้นการเกิดขึ้นของนิพจน์ exp เท่ากับ n ครั้ง
-
Exp{n,} กระตุ้นให้เกิดนิพจน์ exp อย่างน้อย n ครั้ง
-
Exp{n, m} กระตุ้นให้เกิดนิพจน์ exp อย่างน้อย n และสูงสุด m ครั้ง
ตัวอย่างที่ 1
<ก่อน> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; คลาสสาธารณะ RegexExample { โมฆะสาธารณะหลัก (สตริง args [] ) {// นิพจน์ปกติที่จะยอมรับ 5 ตัวอักษร word String regex ="\\w{5}"; สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); System.out.println("ป้อน 5 สตริงอินพุต:"); อินพุตสตริง[] =สตริงใหม่[5]; สำหรับ (int i=0; i<5; i++) { input[i] =sc.nextLine(); } //การสร้าง Pattern object Pattern p =Pattern.compile(regex); for(int i=0; i<5;i++) {// การสร้าง Matcher object Matcher m =p.matcher (input [i]); ถ้า (m.find ()) { System.out.println (อินพุต [i]+":ยอมรับ"); } อื่น { System.out.println (อินพุต [i]+":ไม่ยอมรับ"); } } }}ผลลัพธ์
ป้อนสตริงอินพุต 5 รายการ:ramarajaraghumeghamalyarama:not acceptraja:not acceptraghu:reservedmegha:reservedmalya:reserved
ตัวอย่างที่ 2
import java.util.Scanner;import java.util.regex.Matcher;import java.util.regex.Pattern;คลาสสาธารณะ RegexExample { public static void main (String args[] ) {// นิพจน์ทั่วไปเพื่อให้ตรงกับ a สตริงที่ไม่ใช่คำที่มีความยาว 2 ถึง 6 String regex ="\\W{2,6}"; สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); System.out.println("ป้อน 5 สตริงอินพุต:"); อินพุตสตริง[] =สตริงใหม่[5]; สำหรับ (int i=0; i<5; i++) { input[i] =sc.nextLine(); } //การสร้าง Pattern object Pattern p =Pattern.compile(regex); for(int i=0; i<5;i++) {// การสร้าง Matcher object Matcher m =p.matcher (input [i]); if(m.find()) { System.out.println(input[i]+"matched"); } } }}
ผลลัพธ์ 1
ป้อนสตริงอินพุต 5 รายการ:สวัสดี คุณเป็นอย่างไรบ้าง#$#%##$@%%#&&sample text#$#%matched#$@%%%#'s&matched
ตัวอย่างที่ 3
นำเข้า java.util.Scanner;import java.util.regex.Matcher;import java.util.regex.Pattern; คลาสสาธารณะ RegexExample { สแตติกโมฆะหลัก (สตริง args [] ) { สตริง regex ="[a- zA-Z]{1,20}"; สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); System.out.println("ป้อนชื่อนักเรียน:"); ชื่อสตริง =sc.nextLine(); รูปแบบ p =Pattern.compile (regex); Matcher m =p.matcher (ชื่อ); if(m.matches()) { System.out.println("ชื่อเหมาะสม"); } อื่น { System.out.println ("ชื่อไม่เหมาะสม"); } }}
ผลลัพธ์
ป้อนชื่อนักเรียน:MouktikaName is suitable