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

อธิบาย Regular Expression \s Metacharacter ใน Java


นิพจน์ย่อย/อักขระเมตา "\s" ตรงกับพื้นที่สีขาวที่เทียบเท่า

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

นำเข้า java.util.regex.Matcher;import java.util.regex.Pattern; RegexExample คลาสสาธารณะ { public static void main ( String args[] ) { String regex ="\\s"; String input ="สวัสดี คุณยินดีต้อนรับเข้าสู่ Tutorialspoint ได้อย่างไร !"; รูปแบบ p =Pattern.compile (regex); Matcher m =p.matcher (อินพุต); จำนวน int =0; ในขณะที่ (m.find ()) { นับ ++; } System.out.println("จำนวนที่ตรงกัน:"+นับ); }}

ผลลัพธ์

จำนวนการแข่งขัน:7

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

ตัวอย่างต่อไปนี้จะอ่านสตริงและลบช่องว่างที่เกินระหว่างสตริงทั้งสอง

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

ผลลัพธ์

ป้อนสตริงสวัสดี นี่เป็นข้อความตัวอย่างที่มีช่องว่างไม่ปกติ ข้อความหลังจากลบช่องว่างที่ไม่ต้องการออก:สวัสดี นี่เป็นข้อความตัวอย่างที่มีช่องว่างไม่ปกติ