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

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

วิธีการ:

Elixir ไม่มีฟังก์ชั่น ‘ลบอัญประกาศ’ ในตัว แต่สามารถทำได้ง่ายด้วยการใช้การจับคู่รูปแบบหรือฟังก์ชั่น String ดูตัวอย่างต่อไปนี้:

# ใช้การจับคู่รูปแบบ
def unquote_string("\"" <> quoted_string <> "\""), do: quoted_string
def unquote_string("'" <> quoted_string <> "'"), do: quoted_string
def unquote_string(quoted_string), do: quoted_string

# การใช้งานตัวอย่าง
unquote_string("\"Hello, World!\"") # => "Hello, World!"
unquote_string("'Hello, World!'")   # => "Hello, World!"

# ใช้ String.trim/1
def unquote_string(string), do: String.trim(string, "'\"")

# การใช้งานตัวอย่าง
unquote_string("\"Hello, World!\"") # => "Hello, World!"
unquote_string("'Hello, World!'")   # => "Hello, World!"

ผลลัพธ์สำหรับทั้งสองวิธีจะเป็น:

"Hello, World!"

ศึกษาลึกลงไป

ย้อนกลับไปในวันวาน, อัญประกาศในสตริงเป็นสิ่งที่ต้องระมัดระวัง - จัดการไม่ดีและบูม, ข้อผิดพลาดในไวยากรณ์หรือช่องโหว่ด้านความปลอดภัย Elixir ให้ความสำคัญกับการจับคู่รูปแบบทำให้คุณสามารถแยกและสร้างสตริงของคุณได้ด้วยความแม่นยำ โมดูล String ที่แข็งแกร่งมีประโยชน์ด้วยเช่นกัน, สามารถกำจัดอัญประกาศได้อย่างยืดหยุ่นด้วยฟังก์ชั่น trim ทางเลือกอื่น? นิพจน์ปกติสามารถถีบอัญประกาศออกไปได้, และไลบรารีภายนอกอาจมีพลังเพิ่มเติมหากคุณต้องการมากกว่าเพียงการลบที่พื้นฐาน

ดูเพิ่มเติม

ลงลึกไปยังเหล่านี้: