文字列から引用符を削除する

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関数で引用符を柔軟に取り除くのに便利です。代替手段としては、正規表現が引用符を退治したり、基本的な剥がし以上の機能が必要な場合は外部ライブラリが追加の火力を提供するかもしれません。

参照

これらで深く掘り下げてみてください: