การลบเครื่องหมายอัญประกาศออกจากสตริง

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:

และหากคุณต้องการทราบเกี่ยวกับ regular expressions และต้องการทดสอบรูปแบบของคุณ: