Swift:
การลบเครื่องหมายอัญประกาศออกจากสตริง
วิธีทำ:
Swift ทำให้คุณสามารถจัดการงานลบเครื่องหมายอัญประกาศได้อย่างง่ายดาย นี่คือตัวอย่างเร็วๆ โดยใช้ replacingOccurrences(of:with:)
, ซึ่งทำงานตามที่ฟังดู—สลับส่วนของข้อความด้วยสิ่งอื่น, หรือไม่มีอะไรเลย
var quotedString = "\"This is a 'quoted' string.\""
let unquotedString = quotedString.replacingOccurrences(of: "\"", with: "")
print(unquotedString) // This is a 'quoted' string.
// มีปัญหากับเครื่องหมายอัญประกาศเดี่ยวหรือไม่? เปลี่ยนคำค้นหาเท่านั้น.
quotedString = "'Here's another example.'"
let singleQuoteRemoved = quotedString.replacingOccurrences(of: "'", with: "")
print(singleQuoteRemoved) // Heres another example.
ผลลัพธ์จะเป็นสตริงที่ไม่มีเครื่องหมายอัญประกาศพร้อมสำหรับสิ่งที่คุณวางแผนไว้ถัดไป
ดำดิ่งลึก
เราได้ “ทำความสะอาด” สตริงเหล่านี้มาตั้งแต่เริ่มต้นการเขียนโปรแกรม ในยุคแรก, มันเป็นเรื่องเกี่ยวกับการอนุรักษ์หน่วยความจำที่มีค่าและหลีกเลี่ยงข้อผิดพลาดของไวยากรณ์ในการประมวลผลข้อมูลนำเข้า ก้าวไปข้างหน้ามาถึงวันนี้, และมันเกี่ยวกับการรักษาความสะอาดข้อมูล—โดยเฉพาะเมื่อมีการจัดการกับ JSON หรือเตรียมสตริงสำหรับการทำงานกับฐานข้อมูล เครื่องหมายอัญประกาศที่เหลืออยู่อาจทำให้คิวรี SQL มีปัญหาได้เร็วกว่าที่คุณจะพูดว่า “ข้อผิดพลาดทางไวยากรณ์”
มีทางเลือกอื่นหรือไม่? หากคุณรู้สึก replacingOccurrences(of:with:)
ค่อนข้างธรรมดา, คุณอาจจะสนใจในการใช้ regular expressions สำหรับรูปแบบที่ซับซ้อนกว่า หรือเมื่อคุณต้องการลบเครื่องหมายอัญประกาศเฉพาะในตำแหน่งบางตำแหน่ง เรียกใช้คลาส NSRegularExpression
ของ Swift ได้ที่นี่ แต่จำไว้, regex อาจเป็นดาบสองคม—ทรงพลังแต่บางครั้งก็ใช้มากเกินไป
เกี่ยวกับแง่มุมการนำไปใช้, replacingOccurrences(of:with:)
เป็นวิธีที่มีให้โดย String
ใน Swift ซึ่งเรียกใช้ฟังก์ชันการจัดการสตริงที่ซับซ้อนมากขึ้นภายในที่จัดการกับ Unicode และข้อซับซ้อนอื่นๆ ของการประมวลผลข้อความสมัยใหม่ มันคือหนึ่งใน “ง่ายที่ผิวหน้า, ซับซ้อนภายใต้ฝาครอบ” ที่ Swift จัดการให้ คุณไม่ต้องทำ
ดูเพิ่มเติม
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการจัดการสตริงใน Swift:
- The Swift Programming Language (Strings and Characters): เอกสารที่ Swift.org
- NSRegularExpression: เอกสารของ Apple Developer
และหากคุณต้องการทราบเกี่ยวกับ regular expressions และต้องการทดสอบรูปแบบของคุณ:
- Regex101: เครื่องมือทดสอบและตรวจสอบ Regex