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

วิธีจับคู่จุดเริ่มต้นของสตริง/บรรทัดเฉพาะโดยใช้ Java RegEx


อักขระเมตา "^" ตรงกับจุดเริ่มต้นของสตริงเฉพาะ กล่าวคือ ตรงกับอักขระตัวแรกของสตริง ตัวอย่างเช่น

  • นิพจน์ “^\\d ” จับคู่สตริง/บรรทัดที่ขึ้นต้นด้วยตัวเลข

  • นิพจน์ “^[a-z] ” จะจับคู่สตริง/บรรทัดที่ขึ้นต้นด้วยอักษรตัวพิมพ์เล็ก

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

<ก่อน> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; ตัวอย่างคลาสสาธารณะ { โมฆะสาธารณะสาธารณะหลัก (สตริง args []) {// การอ่านสตริงจากระบบของผู้ใช้ .out.println("ป้อนสตริง"); สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); อินพุตสตริง =sc.nextLine(); สตริง regex ="^[^a-zA-Z0-9//s].*"; //การคอมไพล์นิพจน์ทั่วไป Pattern pattern =Pattern.compile(regex); //ดึงวัตถุที่จับคู่ Matcher matcher =pattern.matcher (อินพุต); if (matcher.matches ()) { System.out.println ("การจับคู่เกิดขึ้น"); } อื่น { System.out.println ("ไม่ตรงกัน"); } }}

ผลลัพธ์

ป้อนสตริง#เริ่มต้นด้วยอักขระพิเศษการจับคู่เกิดขึ้น

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

<ก่อนหน้า> นำเข้า java.util.Scanner นำเข้า java.util.regex.Matcher นำเข้า java.util.regex.Pattern คลาสสาธารณะ RegexExample { สแตติกโมฆะหลัก (สตริง args [] ) { สตริง regex ="\\. $"; สแกนเนอร์ 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("String "+i+" ลงท้ายด้วย '.'"); } } }}

ผลลัพธ์

ป้อนสตริงอินพุต 5 รายการ:สวัสดี คุณเป็นอย่างไรบ้าง คุณอาศัยอยู่ที่ไหนชื่อของคุณคืออะไร ยินดีต้อนรับสู่ tutorialspointThe Biggest Online Tutorials Library.String 0 ลงท้ายด้วย '.'String 2 ลงท้ายด้วย '.'String 4 ลงท้ายด้วย '.' 

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

<ก่อนหน้า> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; คลาสสาธารณะ RegexExample { โมฆะสาธารณะสาธารณะหลัก ( สตริง args [] ) { สตริง regex ="^ [A-Z ]"; สแกนเนอร์ 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("String "+i+" ขึ้นต้นด้วยตัวพิมพ์ใหญ่"); } } }}

ผลลัพธ์

ป้อนสตริงอินพุต 5 รายการ:Sample text1sample text2hello how are youยินดีต้อนรับสู่ tutorialspointอรุณสวัสดิ์สตริง 0 เริ่มต้นด้วยตัวพิมพ์ใหญ่สตริง 3 เริ่มต้นด้วยตัวพิมพ์ใหญ่สตริง 4 เริ่มต้นด้วยตัวพิมพ์ใหญ่