事務作業の効率化「正規表現の肯定先読み」具体的な使い方は!?

記事更新日: 2021/09/28

ライター: なかしー

なかしー

正規表現の記述でよく見られる

「肯定先読み」ってどういうこと?

正規表現って確かに難しいですけど、使えるようになるとスプレッドシートやプログラミングで非常に活用できます。

実際に僕自身スプレッドシートの作業が1時間の作業を10分ぐらいに削減したこともあります。

なかしー

事務作業が多いなら、正規表現を覚えることをお勧めします。

難しいとは思いますが、活用できる機会が多いため覚えて損はないです。

この記事を書いた人
なかしー
元システムエンジニアのWEBマーケター。IT企業に勤めており、日々エクセルと格闘している。
社内ではスプレッドシートやエクセルの管理周りを任せられており、自称エクセルマスター。
正規表現の使い方を知って、1/5ぐらいまで圧縮した経験アリ。

「肯定先読み」とは!?

「(),?=」を使い、肯定先読みを実現します。

指定した文字列と一致した場合に真を返します。

 

肯定先読みは、「直後に特定の文字列があるパターン」とパターンマッチします。

書き方の基本形は、「hoge(?=fuga)」で、この場合は「直後にfugaがくるhoge」という意味になります。

例えば、「pine(?=apple)」であれば、「pineapple」「pineapplejuice」がマッチしますが、「pinecone」はマッチしない(=対象外)ですし、

「サーチ(?=バンク)」なら、「サーチバンク」「サーチバンク2」がマッチしますが、「サーチコンソール」はマッチしません。

「肯定先読み」の活用事例

スプレッドシートで「サーチバンク(?=8)」を対象とする場合は「先頭の文字列内に"サーチバンク"という文言があったら消す。その際、"8"を文字列に含むもの」を真として返します。

文章だけではわかりにくいので、具体的にスプレッドシートで事例を記載しております。

 

1.正規表現「サーチバンク(?=8)」を使い対象の文字列を探索

2.すべて置換で、対象の文字列を削除完了。

「文字列内に"サーチバンク"という文言があったら消す。その際、"8"を文字列に含むものが対象」つまり、"サーチバンク8"の"サーチバンク"の文字が削除されます。

まとめ

正規表現は初心者からすると、確かにすごく難しく感じるかもしれません。

ただ、正規表現を極めることで"スプレッドシート"や"プログラミング"でかなり活用できます。

 

実際に業務が1時間から10分ぐらいまで圧縮することができたので、僕自身も覚えてよかったと思います。

一回じゃ覚えにくいとは思いますが、何度も見て活用していきましょう!!

 

↓応用編も下記に記載していますので参考になれば幸いです。

この記事を書いたライター

なかしー

プロフィール

元システムエンジニア、都内の上場企業のグループ会社にてWEBマーケの仕事に携わっています。

浪人1回・留年1回・新卒1年目で会社を辞めるが、前職の求人広告代理店にてWEB集客系の仕事に従事し、大手企業案件を複数担当する。

IT業界や求人業界の役立つ情報が提供できればと考えています。

 

経歴

メーカーのシステムエンジニア→求人広告のWEBマーケター→IT企業のWEBマーケター

この記事に関連するラベル

ページトップへ