ノンプログラマーでもOK!データ管理に便利な正規表現を覚えよう

今回の記事は、スプレッドシートでのデータ管理に便利な正規表現について紹介していきます。

私は普段メーカーのインハウスデザイナーをやっているのですが、我が社のインハウスデザイナーってわりと何でも屋な側面もあるのでデータ管理、画像管理などをしなければいけない必要もあったりします。最近では、これまでに撮影してきた画像を商品別の名前に分けたフォルダに振り分け直す、という業務がありました。

このようなときに、データ管理をスムーズにできるよう、Googleのスプレッドシートをとても頻繁に使っているのですが。その中でも、関数よりも役に立っているのが今回紹介する正規表現なんです。

ということで、正規表現とはなんなのか?どのように使えるのかというところから説明を進めていきます。

正規表現とは

正規表現とは

正規表現とは指定した条件に一致する複数の文字列を一つのパターンで表現する方法です。指定する条件は例えば「アルファベットと数値からなる 5 文字の文字列」や「末尾が ing で終わる文字列」など目的に合わせて条件を設定します。 正規表現は大量のデータの中から正規表現のパターンに一致する文字列を検索したり、見つかった文字列を別の文字列に置換する場合などに使われます。

https://www.javadrive.jp/regex-basic/meta/index1.html

こんな感じの説明になりますが、とっても簡単に言うと

検索と置き換えのすごいパワーアップバージョン

といったところ。これだけではまだわかりにくいのですが、細かい文字列を目的に合わせて検索・置換をすることで処理がとてもスピーディーになります。Googleスプレッドシートでは検索・置換の中で正規表現を使うことができ、普通に手入力で処理すると途方もない時間がかかる作業も一瞬で処理することができるケースがあります。

中堅デザイナー
データ管理などでは正規表現を使えるとほんとに便利ですよ

ここまででもいくつかの記事の中で表計算ソフトを使った時短方法を紹介していますが、正規表現の知識を持っていると自分の思ったようなデータ名に整形することが簡単にできるようになるため、さらなる作業の時短を実現することができます。

全角を半角に一括で変更するスプレッドシートのスクリプトが便利

2021.05.25

覚えると時短につながる!デザイナーがリアルに使える表計算ソフト

2021.05.21
フォルダ名

Mac標準アプリでファイル名の一覧をテキストに書き出す方法

2021.05.11

この正規表現、記述方法やコードの作りを完全に理解できるのが1番の理想ではあるのですが、私もよく使うものだけを覚えていたり、やりたいことから逆に検索をして調べて出てきたコードを使って処理をするというようなレベルではあるのですが、そのような使い方でも十分に効率的にデータを整形することができています。自分で手で直す手間を考えると、正規表現を調べて使った方が圧倒的に早いことが多いですね。

正規表現の理解が少なくても記述のサンプルをまとめているサイトがかなりあるので、これらを参考に使用してみるといいかと思います。

私のオススメは「正規表現サンプル集」

ここからコピペしたり、処理に合わせて部分的に書き換えて希望通りの処理になるかを試してみることで正規表現を使うことは充分にできます。ちなみに試しに使ってみるときはコチラの正規表現チェッカーなどを使うとブラウザ上で効果を確認できます。

私の場合はよく使う正規表現をこちらの記事で紹介したClipyのスニペットを使い、コードをいつでも呼び出せるようにしています。

メールの返信を定型文化してスピーディに!Clipyのスニペット機能を使おう

メールの返信を定型文化してスピーディに!Clipyのスニペット機能を使おう

2020.11.27

メーカーのインハウスデザイナーがよく使う正規表現

それでは私がよく使っている正規表現をいくつか紹介したいと思います。こちらを見てみて、自分の業務や作業で使えそうであればぜひ活用してみてください。基本的に私が使っているのは、Googleスプレッドシート。

Googleスプレッドシート は検索・置き換えで正規表現が使える上に、エクセルとの親和性も高く、さらに無料で使えるというところがメリットですね。

では、サンプルデータを使って実際に正規表現の使い所を紹介していきます。今回のサンプルはこちらのサイトから使用させていただいています。

では、実際の置き換えをみていきましょう

実際の正規表現を使った検索・置換

❶行の先頭に特定の文字列を追加したい

そのような際には置換をしたいBの行を選択した状態で、スプレッドシートのメニューから 編集 → 検索・置換 を選択。

下記のように、「正規表現を使用した検索」にチェックを入れ、

検索 : ^
置換 : ID :

と入力します。

これで、すべてを置換 を選択すると、下記のようにBの行の先頭にまるっとID: が入力されました。

↓ 動画で確認できます

使い方としては上記のような感じで、検索・置換で正規表現を使用を選択して、入力するのみ。

記述のサンプルもコードを覚えるような大変さはないので、学習コストをかけずにさらりと使えるようになれると思います。

ちなみに、私はほかにもこのような正規表現をよく使っています。(置換に入力していないものは検索結果を削除する、という処理になります。)

行末の空白を削除する
検索 : +$
置換 :
結果:行末にある空白(全角、半角スペース)を削除
SではじまりYで終わる
検索 : S.+Y
置換 :
結果:SではじまってYで終わる文字列を削除する。OPQRSTUXYZにこの正規表現を使うとOPQRZとなる
品番などを削除する
検索 : [0-9A-Z]{5,}
置換 :
結果:数字アルファベット(大文字)で構成された5文字を削除する。ABC01やEG301、AQZY1などの文字列を削除する

以上が私が仕事でよく使う正規表現になります。関数を使っても実現できるようなものもありますが、正規表現と関数ではできることがまた違います。

細かな書式を覚える必要はないので、「こう記述すればこうなる」ということが理解できていれば使うことはできます。また使っているうちに徐々に覚えていくので、ひとまず使いながら覚えていけばいいかなと思います。

まとめ

今回はGoogleスプレッドシートでの正規表現を使い方をまとめました。今回の内容はほんとにエントリーてきなものでもっともっと便利な記述がたくさんあります。

正直、私も全く使いこなせていないレベルではあるのですが、それでも十分に恩恵は受けているかと思います。

中堅デザイナー
こういうものがあるって知るってのが大切ですね。/voice]

デザイナーはなかなかデザイン関係以外の情報に疎かったりしますからね。

別の記事では、スクリプトを使って正規表現でイラストレーターの文字組の中からでテキストデータに修正をかける方法を紹介する予定です。こちらもイラストレーターでの文字情報のの扱いをパワーアップできる便利なものなのでぜひ時短を目指すデザイナーに使ってほしいスクリプトです。

正規表現を理解した上で使いこなすことができるととかなり時短効果の高い内容になるので、合わせてぜひお試しください。

それでは、今回はこのへんで。