LoginSignup
8
13

More than 3 years have passed since last update.

visual studio code で、実践的に正規表現つかってみる

Last updated at Posted at 2018-07-22

visual studio code で正規表現を使うのは下記を参考にしてしてください。

Visual Studio Codeを用いた簡単な正規表現検索

ここでは、実践的なところのみ説明します。

(事例)同じ会社でもいろいろ表記があって名寄せをする必要があります。
そのときに正規表現つかうと検索、置換ができて便利です。
サンプルので、データは下記のように、コード番号、会社名になっています。コード番号は、
単純化のために、001 にしてあります。

001,株式会社日本貿易
001,株式会社日本貿易 
001,株式会社 日本貿易
001,株式会社 日本貿易
001,日本貿易株式会社
001,日本貿易㏍.
001,カブシキカイシャニホンボウエキ
001,㈱日本貿易
001,カ)ニホンボウエキ
001,カ)ニホンボウエキ

正しいのは、
001,株式会社日本貿易 だとします。

株式会社日本貿易だと思われるデータを見つけて、株式会社日本貿易に置換していきます。

  • まずは、検索です。
  • 最初の 001,株式会社日本貿易 を探します。次の正規表現を入れると一件だけでてきます。
^\d+,株式会社日本貿易$
  • 正規表現の説明です。

    • ^ は、行の最初という意味です。
    • \d+ は数字(\dが数字の意味)が1つ以上(+がその意味)ならんでいるという意味です。
    • , は、カンマそのものです。
    • 株式会社日本貿易 もそのままです。
    • 最後の$ は、行の最後です。
  • 2行目は、1行目とそっくりですが、ひっかかりません。

  • それは、最後に空白があるからです。下記にするとひっかかります。

    • ^\d+,株式会社日本貿易 $
  • 3,4行目は、株式会社と日本貿易の間に、半角、全角の空白がはいっています。

    • 下記の正規表現をいれると、4件でてきます。
^\d+,株式会社.*日本貿易.*$
  • 正規表現の説明です。

    • .* は、なんかの文字(.がなんかの文字の意味)がはいっているかはいっていなくてもよし(*がその意味、+は一文字はかならずないといけません。\d* は数字なしでもいいですが、\d+は数字がなんかはいっていないとだめです。* と + 似ていますが、違うのです。)
  • では、置換しましょう。001,株式会社日本貿易に置換では、つまらないので、下記のようにします。かっこで囲みます。1行名が、検索で、2行目が置換です。

^(\d+),(株式会社).*(日本貿易).*$
$1,$2$3
  • 正規表現の説明です。
    • ()で囲んだ部分は、置換のところで、順に、置換で、$1 $2 $3 と使えます。

実際に置換してみましょう。結構面白いのではないでしょうか?

8
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
13