GoogleスプレッドシートでSUBSTITUTE関数を使って特定の文字を消す方法と、検索と置換を使って特定の文字を消す方法をご紹介します。REGEXREPLACE関数を使用して複数の文字を置換する方法についても解説しているので、ぜひ参考にしてみてください。
関数を使って特定の文字を消す方法
特定の文字を空白に置き換えることで元のテキストから一部の文字を削除できる、2つの関数をご紹介します。正規表現を使用した文字の指定方法があることも覚えておくと便利です。
特定の文字を消す関数の種類
特定の文字を消す関数にはSUBSTITUTE関数と、REGEXREPLACE関数があります。前者の方が広く認知されており、初心者の方におすすめです。
◇SUBSTITUTE関数の特徴
- 使い方がシンプルなので、誰でも理解しやすい。
- 基本的には複数の文字列は指定できない(入れ子すれば可能)。
◇REGEXREPLACE関数の特徴
- 正規表現を覚えるまたは確認する必要がある。
- 複数の文字列やすべての数字の検索など、より複雑な指定ができる。
SUBSTITUTE関数で特定の文字を消す方法
特定の文字を消すには、SUBSTITUTE関数で検索文字列を空白に置換します。
例えば検索文字列にハイフン(“-“)を、新しい文字列に空白(“”)を指定してみましょう。SUBSTITUTE関数はテキスト(AA-BB)内でハイフンを検索し空白に置換するため、AABBを返します。
SUBSTITUTE関数の構成要素:(テキスト, 検索文字列, 新しい文字列, [置換対象])
REGEXREPLACE関数で特定の文字を消す方法
REGEXREPLACE関数は、指定した正規表現に従って特定の文字列を新しい文字列に置換します。
例えば正規表現に “[-]” を、新しい文字列に空白(“”)を指定してみましょう。REGEXREPLACE関数はテキスト(AA-BB)内でハイフンを空白に置換するため、AABBを返します。
これは、SUBSTITUTE関数で特定の文字を削除した結果と同じです。
REGEXREPLACE関数の構成要素:(テキスト, 正規表現, 新しい文字列)
REGEXREPLACE関数は正規表現を使用するため、より複雑な文字検索が可能です。
SUBSTITUTE関数が検索できるのは1つの文字列のみですが、REGEXREPLACE関数は正規表現の角括弧[]内に指定したすべての文字を置換してくれます。
例えば正規表現に”[BD]”を指定して空白に置換すると、テキスト(ABCDE)をACEに置換できます。
正規表現にはたくさんの種類がありますが、活用例をもう1つをご紹介します。
例えば \d は「数字」を表す正規表現です。
正規表現に数字(\d)を、新しい文字列に空白(“”)を指定すると、REGEXREPLACE関数はテキスト(1A23B2)内で数字を空白に置換するため、ABを返します。
正規表現 | 説明 |
[…] | 角括弧内のすべての文字 |
[^…] | 角括弧内の文字を除くすべての文字 |
\d | すべての数字 |
\D | 数字を除くすべての文字 |
\s | 空白 |
\S | 空白を除くすべての文字 |
検索と置換を使って特定の文字を消す方法
まず特定の文字を消したいセル範囲を選択し、編集タブ から「検索と置換」をクリックします。
ショートカットキーの[Ctrl]+[H]を押すと、同じ画面を開けます。
次に、検索欄に消したい文字を入力してください。今回はハイフン(-)を入力します。
検索欄に入力した文字を置換して空白にしたいので、置換後の文字列には何も入力しません。
最後に「すべて置換」をクリックすると、選択した範囲の文字列からハイフンが削除されました。