パターンに一致する文字を削除する

Elm:
パターンに一致する文字を削除する

How to: (方法)

Elmでは、正規表現は直接サポートしていませんが、Stringモジュールを使ってパターンにマッチする文字を削除することができます。以下に例を示します。

module Main exposing (..)
import Html exposing (text)
import String

removePattern : String -> String -> String
removePattern pattern string =
    String.split pattern string |> String.join ""

main =
    let
        originalString = "Hello 123 Elm!"
        cleanedString = removePattern "123 " originalString
    in
    text cleanedString  -- "Hello Elm!"

実行結果は、“Hello Elm!” が出力されます。

Deep Dive (深堀り)

Elmは関数型プログラミング言語であり、JavaScriptのように正規表現を使って直接パターンマッチングを行うことはできません。しかし、Stringモジュールの関数を組み合わせれば、同様の結果を達成できます。removePattern関数は、String.splitを使って文字列をパターンで分割し、String.joinで再結合します。これがパターンにマッチする文字を削除するElm特有の方法です。代わりにelm/regexパッケージを使うこともできますが、それはより複雑なパターンマッチングに必要です。

See Also (関連情報)