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

วิธีลบช่องว่างโดยใช้ Java Regular Expression (RegEx)


นิพจน์ทั่วไป “\\s” จะจับคู่ช่องว่างในสตริง วิธีการreplaceAll() ยอมรับสตริงและนิพจน์ทั่วไปแทนที่อักขระที่ตรงกันด้วยสตริงที่กำหนด หากต้องการลบช่องว่างทั้งหมดออกจากสตริงอินพุต ให้เรียกใช้ replaceAll() วิธีการข้ามนิพจน์ทั่วไปที่กล่าวถึงข้างต้นและสตริงว่างเป็นอินพุต

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

คลาสสาธารณะ RemovingWhiteSpaces { โมฆะ สาธารณะ หลัก ( สตริง args [] ) { อินพุตสตริง ="สวัสดี ยินดีต้อนรับสู่ tutorialspoint"; สตริง regex ="\\s"; ผลลัพธ์สตริง =input.replaceAll(regex, ""); System.out.println("ผลลัพธ์:"+ผลลัพธ์); }}

ผลลัพธ์

ผลลัพธ์:Hiwelcometotutorialspoint

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

ในทำนองเดียวกัน appendReplacement() เมธอดยอมรับบัฟเฟอร์สตริงและสตริงการแทนที่ และผนวกอักขระที่ตรงกันด้วยสตริงการแทนที่ที่กำหนดและผนวกเข้ากับบัฟเฟอร์สตริง

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

ผลลัพธ์

ป้อนสตริงอินพุต:นี่คือข้อความตัวอย่างที่มีสตริงช่องว่างสีขาว:นี่คือข้อความตัวอย่างที่มีช่องว่างสีขาวResult:thisisasampletextwithwhitespaces

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

คลาสสาธารณะ Just { public static void main(String args[]) { String input ="นี่คือข้อความตัวอย่างที่มีช่องว่าง"; สตริง str[] =input.split(" "); ผลลัพธ์สตริง =""; สำหรับ (int i=0; i 

ผลลัพธ์

ผลลัพธ์:นี่คือตัวอย่างข้อความพร้อมช่องว่าง