Googleスプレッドシートでテキスト(文字列)を別のテキストに置換したい時は、REPLACE関数を使用します。
類似の関数としてSUBSTITUTE関数があります。違いは以下です。
- SUBSTITUTE関数:文字列を指定して置換する
- REPLACE関数:位置を指定して置換する(このページ)
スプレッドシートで文字列を他の文字列に置換する
4文字目以降をABCに変換する
REPLACE関数の使い方
A列に入力されている数字の4文字目以降の「456」を「ABC」に置換するには以下のような数式を入力します。
1. 判断結果を表示させたいセルを選択します。
(今回はセルC2)
2. =REPLACE(A2,4,3,"ABC") と入力します。
=REPLACE(A2,4,3,"ABC")
4文字目から3文字分を指定した文字に置き換える、という意味になります。
REPLACE関数とSUBSTITUTE関数の違い
REPLACE関数とSUBSTITUTE関数はどちらも文字や数字を置き換えることができるため、どちらを使用するか迷うことがあります。
この2つの違いは以下を参考にしてください。
- 文字が何であろうと指定した位置のものを別のものに置き換える
→REPLACE関数(このページ) - 位置がどこであろうと指定した文字を別の文字に置き換える
→SUBSTITUTE関数
セルに入力済みの郵便番号の「-」を削除する場合、REPLACE関数とSUBSTITUTE関数どちらの関数でも削除ができます。
今回のように削除したい「-」が1つならどちらの関数でもできますが、REPLACE関数は置換したい文字列が1箇所しか対応できません。
SUBSTITUTE関数はセル内に置換したい文字列が複数あった時にすべてを置換する、1つだけ置換するなどを使い分けることができます。
郵便番号の「-」を削除する(REPLACE関数の場合)
REPLACE関数で「-」を削除するには、4文字目を空白に置換する、という指定になり、数式は以下のように入力します。
=REPLACE(A2,4,1,"")
以下の例ように、もし「-」のないデータが存在していた場合、REPLACE関数は指定された場所の文字が何であろうと置き換えるので、意図しない結果になることがあるので注意してください。
郵便番号の「-」を削除する(SUBSTITUTE関数の場合)
SUBSTITUTE関数で「-」を削除するには、「-」を空白に置換する(「-」の位置はどこでも可)、という指定になり、数式は以下のように入力します。
=SUBSTITUTE(A2,"-","",1)
SUBSTITUTE関数は以下のリンクの別ページで詳しく説明しています。
スプレッドシートのREPLACE関数の構文
スプレッドシートのREPLACE関数は以下のように入力します。
引数 | 説明 |
---|---|
テキスト | 対象となるテキストを入力するかセルを選択。 |
位置 | 置換したい文字がある位置 |
長さ | 置換したい文字列の長さ |
新規テキスト | 置換後のテキストを指定する。 |