トップ / 式評価・文字列・型変換

replace(文字列の置き換え)

文字列中の一致した部分を、別の文字列に置き換える(正規表現ではない単純一致)。

SNOWPARK 静的検証のみ

replace(col("phone"), lit("-"), lit(""))

POLARS 実行確認済み

pl.col("phone").str.replace_all("-", "", literal=True)

挙動・設計の違い

SnowparkのreplaceはSQLのREPLACEに変換され、リテラル一致で全ての出現を置き換える。Polars側はreplace(最初の1件のみ)とreplace_all(全件)でメソッドが分かれており、regexp_replaceのページと同様に既定は正規表現モードなので、literal=Trueを付けて動作を揃える必要がある。

移行時の落とし穴

置換後の文字列(第3引数)を省略したときの挙動が違う。Snowflake公式ドキュメントは「省略時、または空文字列のときは一致箇所を単純に削除する」と明記しており、replace(col, pattern)だけでも動く。一方Polarsのstr.replace_all(pattern, value, ...)valueが必須の位置引数で省略できない=削除したいだけでも""を明示的に渡す必要がある。

式評価・文字列・型変換の他のメソッド

出典・検証情報

Polars 1.36.1 で実行確認 / Snowpark Python SDK 1.51.1 で静的検証(2026-08-29)