どうもYnek0です。
今回は正規表現とそれに対応するREGEX関数
についてお話ししていけたらと思います。
まずは正規表現とはなんぞや?と言う事から始めないといけないですね。
正規表現と言うものは正直、結構奥が深く、根深く、
しつこくつきまとってくる厄介なやつなので深掘りせず触りのみを関わらせて頂きます。
正規表現は何故かそれだけで本すら出せるレベルの物なので
チャレンジしたい方はどうぞ
正規表現とはなにか
簡潔に言うのと検索や置換の際に使う文字列の表記方法です。
多くの人はスプレッドシートやExcel、またはテキストやPDFで検索をする事があると思います。
その際に何かキーワードを入力して検索する事が多いとおもいます。
正規表現はそれの幅を広げたバージョンです。
- 先頭が『あ』で始まる5文字を検索
- 数字が含まれている文字列を検索
- 5文字のAからZで構成された文字列を検索
などなど、特定のキーワードに依存しない幅広い文字列を
対象とできるのが特徴です。
正規表現はメタ文字と呼ばれる特殊記号を使って表現します。
下記に、基本的な表現をあげていきます。
基本的なメタ文字
何でも良い1文字 | . |
文字列の1番前 | ^ |
文字列の1番後ろ | $ |
直前の文字の繰り返し | * |
最低でも直前の文字が1つ含まれる文字列 ※直前の文字列も含まれる |
+ |
直前の文字列が存在しないか1つのみ含まれる文字列 ※直前の文字列も含まれる |
? |
なんでもいい文字列の連続 | .* |
などなどがあります。
使い方としては、正規表現を使用してYnek0を検索したい場合
Y...0
と記述すればYnek0が引っかかりますね。
スプレッドシートの標準機能にも搭載
REGEX関数について
RE2 正規表現を使用しております。
□REGEXEXTRACT
◆基本構文
REGEXEXTRACT(テキスト, 正規表現)
◇テキスト
正規表現の対象
◇正規表現
マッチするための正規表現を記述
□REGEXMATCH
エラーになるので注意して下さい。
◆基本構文
REGEXMATCH(テキスト, 正規表現)
◇テキスト
正規表現の対象
◇正規表現
マッチするための正規表現を記述
□REGEXREPLACE
◆基本構文
REGEXREPLACE(テキスト, 正規表現, 置換)
◇テキスト
正規表現の対象
◇正規表現
マッチするための正規表現を記述
◇置換
マッチした際に置き換える文字
これら関数を使用して、文字列の部分抽出したり、
検索文字列含み検索かけたり、置換したりできます。
では3つの関数の基本的な使い方をスプレッドシートで説明します。
なぜか1セルにまとまった文字列から特定の文字列だけを抽出したいとか
Webサイトからコピペしたデータを整備したいとかに一役かえる関数なのではないでしょうか。
今回は以上となります。
何か別の使い方を思いつき次第、再度更新させてもらいます。
最後に、スプレッドシート標準として搭載されている機能一覧もご紹介していますので
是非ご参考ください。
ではまた、ご贔屓に。