スプレッドシートで文字列を置換する方法について確認します。
置換を行うには関数が2つあります。
1つはREPLACE、もう1つはSUBSTITUTEです。
では早速、違いを見ていきましょう。
REPLACE
色々な言語において文字列置換といえばREPLACEが挙げられますが、スプレッドシートでは動きが異なります。
スプレッドシートでサンプルを作成したのでまずはご覧ください。
[BLOGCARD url=”https://docs.google.com/spreadsheets/d/1AedrI4tBqOXPKTLCBlQUBhIh-d7PIBnt4Z0MXdUeRPc/edit#gid=0″]
REPLACEと聞くと一致した内容(文字列)を指定文字列を置き換えると思いますが、指定位置から指定文字数をxxxに変換するという動作に戸惑う方も多いでしょう。
SEARCH(大文字小文字を同一視)やFIND(大文字小文字を区別)を利用すると文字X~文字Yまでを置換という処理を自動化することもできます。
SUBSTITUTE
一般的な置換の形に近いのがSUBSTITUTEです。一致する文字列を指定回数分置換してくれます。
こちらもサンプルシートをご覧ください。
[BLOGCARD url=”https://docs.google.com/spreadsheets/d/1WskdCmB9jwzMhcsIsq2A6VAwincbjFDbsS-z5D3OGQs/edit#gid=0″]
特定の文字や文字列を置換してくれるので、整形(特に不要な文字の除去)目的に利用することが多いと思います。
REGEXREPLACE
関数は2つと書きましたが、正規表現が分かる方にはREGEXREPLACEがお勧めです。スプレッドシートのみ利用可能です。
特定の文字列に一致(マッチ)、区間指定など様々なケースに適用できます。
ネックなのは正規表現が分からないと利用できない点ですね。
[BLOGCARD url=”https://docs.google.com/spreadsheets/d/13KV9T58ljvn2OwQd2bgF8zwXgLdmEV3nFNt64RjYraQ/edit#gid=0″]
文字列の置換には2つ(+正規表現)の関数があることを紹介しました。
業務文書には何かとフォーマットがつきものですので、テキスト整形のヒントとしてご利用ください。