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

วิธีการคอมไพล์รูปแบบ () ใน Java พร้อม Examples


คลาสรูปแบบของ java.regex package เป็นการแสดงนิพจน์ทั่วไปที่คอมไพล์แล้ว

คอมไพล์() เมธอดของคลาสนี้ยอมรับค่าสตริงที่แสดงนิพจน์ทั่วไปและส่งกลับอ็อบเจกต์ Pattern

ตัวอย่าง

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

ผลลัพธ์

ป้อนอินพุต stringhello id ของฉันคือ 1120KKAคอมไพล์นิพจน์ทั่วไป:(\d)Given String มีตัวเลข

อีกรูปแบบหนึ่งของเมธอดนี้ยอมรับค่าจำนวนเต็มแทนแฟล็ก โดยที่แต่ละแฟล็กระบุเงื่อนไขทางเลือก เช่น CASE_INSENSITIVE จะละเว้นกรณีขณะรวบรวมนิพจน์ทั่วไป

ตัวอย่าง

นำเข้า java.util.Scanner;import java.util.regex.Matcher;import java.util.regex.Pattern; class สาธารณะ CompileExample { public static void main (String args[] ) {// รวบรวมรูปแบบนิพจน์ทั่วไป รูปแบบ =Pattern.compile("[t]", Pattern.CASE_INSENSITIVE); //ดึงวัตถุตัวจับคู่ Matcher matcher =pattern.matcher("Tutorialspoint"); จำนวน int =0; ในขณะที่ (matcher.find ()) { นับ ++; } System.out.println("จำนวนที่ตรงกัน:"+นับ); }}

ผลลัพธ์

ป้อนอินพุต stringTutorialspoint จำนวนที่ตรงกัน:3