[]
REGEXREPLACE 関数を使用すると、指定された正規表現 ("regex") に基づいて、文字列のテキストを別の文字列に置き換えることができます。
=REGEXREPLACE(text, pattern, replacement, [occurrence], [case\_sensitivity])
引数 | 説明 |
|---|---|
text (必須) | 文字列または文字列を置き換えるテキストを含むセルへの参照。 |
pattern (必須) | 置き換えるテキストのパターンを記述する正規表現 ("regex")。 |
replacement (必須) | パターンのインスタンスを置き換えるテキスト。 |
occurrence | パターンに一致したインスタンスの置換箇所を指定します。 0:すべて置き換える(デフォルト) 正の数 N:先頭からN 番目の一致箇所を置き換える 負の数 N:末尾から N 番目の一致箇所を置き換える |
case_sensitivity | 一致で大文字と小文字が区別されるかどうかを判断します。 既定では、大文字と小文字が区別されます。 次のいずれかを入力します。 0: 大文字と小文字を区別する(デフォルト) 1: 大文字と小文字を区別しない |
返り値:置換後の文字列
=REGEXREPLACE("0000abcd","0","1", 2) // 0100abcd
=REGEXREPLACE("0000abcd","0","1", 0) // 1111abcd
=REGEXREPLACE("0000abcd","0","1", -1) // 0001abcd
=REGEXREPLACE("aaaAbcd","a","0", ,0) // 000Abcd
=REGEXREPLACE("aaaAbcd","a","0", ,1) // 0000bcd
=REGEXREPLACE("Sonia (378) 555-4195 Brown(878) 555-8622", "[0-9]+-", "***-") // Sonia (378) ***-4195 Brown(878) ***-8622
=REGEXREPLACE("JamesHenry","([A-Z][a-z]+)([A-Z][a-z]+)","$2, $1") // Henry, Jamestype=info
REGEXREPLACE関数はExcelの実装と互換性を保ちながら、従来のSJS.REGEXREPLACE関数を置き換えます。SJS.REGEXREPLACEは非推奨ですが、後方互換性は維持されています。両関数の主な違いは次のとおりです。
機能 | REGEXREPLACE | SJS.REGEXREPLACE |
|---|---|---|
引数の型 | 大文字・小文字の区別には数値(0/1)を使用:
| 文字列による修飾子(例:"ig")を使用:
|
置換箇所 | 柔軟な置換箇所指定が可能:
| 以下のみ対応:
|
複数行の処理 | 通常の正規表現記法が必要:
| 複数行対応のための"m"修飾子に対応:
|
非文字列入力 | すべてのデータ型を受け付ける:
| 非文字列入力の場合、 |