セル内から特定の文字列を抜き出す方法
前回、以下の記事でセル内かた特定の文字列を抜き出す方法を紹介しました。
記事内でも色々方法があるとは書いていますが、今回は別の方法で同じように特定の文字列を抜き出す方法を紹介したいと思います!
下記の記事で紹介している正規表現を利用したREGEXEXTRACT関数で抜き出す方法です。
※正規表現が分からないという方は、下記の記事に紹介していますのでそちらから初めてください。
正規表現を覚える必要はありますが、それが分かれば前回やった、関数を組み合わせて抜き出す方法よりも、早く・スマートに実現することが可能です(^^)
それでは、前回と同じサンプルでやっていきましょう!
こんな感じのデータです。
それを、こんな感じに取り出したい時とかです。
店舗ナンバーなど余計な部分を省いて取り出したいときありますね(^^)
使用関数
REGEXEXTRACT関数
これを使うと一撃で出せます。
使い方
数式の文字列部分は、A列の抜き出す元の文字列が入ったセルを参照します。
そして第2引数の「正規表現」の部分で抜き出したい文字列のパターンマッチを作成すればいいですね(^^)
正規表現がよくわからないかたは、こちらをみてください。
B2セルに次の数式を入力します。
数式
= REGEXEXTRACT( A2, “-.+店” )
第1引数は、A2のセルを参照
第2引数(正規表現)には、「-.+店」を入力しています。
正規表現で言う、「.」は任意の1文字、「+」は1回以上の繰り返し、という意味になります。
つまり、「-.+店」この正規表現の意味は以下のようになります。
これにマッチする文字列が抜き出されます。
実際にやってみましょう!B3・B4セルには同じ数式をコピーします。
できました!と言いたいところですが、「-」は余分ですね(T_T)
こんな時にも正規表現には便利な記号があります。
つまり、正規表現「-.+店」の抜き出したい部分を「()」で囲って次のように修正します。
-(.+店)
「-」はいらないんで、「-」の次からですね(^^)
はい、完成です。
数式を組み合わせてやるよりも、ずっと早くスマートにできますね(^^)
まとめ
REGEXEXTRACT関数を使って、セル内から特定の文字列を抜き出す方法を紹介しました。正規表現はプログラミングでも使う方法です。このように少しずつ知識を増やしていくことで、作業がどんどん早くなります!普通の関数に慣れてきたらどんどん知識の幅を広げていきましょう!
コメント