การลบตัวอักษรที่ตรงกับรูปแบบ

Dart:
การลบตัวอักษรที่ตรงกับรูปแบบ

วิธีทำ:

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

นี่คือตัวอย่างง่ายๆ ที่แสดงวิธีการลบตัวเลขออกจากสายอักขระ:

void main() {
  String stringWithDigits = 'Dart123 is fun456';
  // กำหนดรูปแบบนิพจน์ปรกติที่ตรงกับตัวเลขทั้งหมด
  RegExp digitPattern = RegExp(r'\d');
  
  // แทนที่ทุกโอกาสที่ตรงกับรูปแบบด้วยสายอักขระว่าง
  String result = stringWithDigits.replaceAll(digitPattern, '');
  
  print(result); // ผลลัพธ์: Dart is fun
}

ถ้าคุณกำลังจัดการกับสถานการณ์ที่ซับซ้อนกว่า เช่น การลบอักขระพิเศษยกเว้นช่องว่างและเครื่องหมายวรรคตอน นี่คือวิธีที่คุณจะทำ:

void main() {
  String messyString = 'Dart!@# is *&()fun$%^';
  // กำหนดรูปแบบที่ตรงกับทุกอย่างยกเว้นอักขระ ตัวเลข ช่องว่าง และเครื่องหมายวรรคตอน
  RegExp specialCharPattern = RegExp(r'[^a-zA-Z0-9 \.,!?]');
  
  String cleanedString = messyString.replaceAll(specialCharPattern, '');
  
  print(cleanedString); // ผลลัพธ์: Dart! is fun
}

สำหรับงานที่ต้องการการจับคู่และการแทนที่รูปแบบที่ซับซ้อนมากขึ้น เอกสารคู่มือ RegExp ที่ครอบคลุมของ Dart นำเสนอการศึกษาลึกลงไปในนิพจน์ที่ซับซ้อนและการใช้งานของพวกเขา อย่างไรก็ตาม ตัวอย่างข้างต้นครอบคลุมกรณีการใช้งานทั่วไปส่วนใหญ่สำหรับการลบอักขระตามรูปแบบในการเขียนโปรแกรม Dart