pythonの正規表現のオブジェクトの流れ

  • このエントリーをはてなブックマークに追加

忘れやすい正規表現のオブジェクトの流れを理解する。

正規表現オブジェクトの流れ

  1. import reでインポートする。
  2. 検索に使う文字を定義する 例:hoge = ‘\d+’
  3. 正規表現で検索する文字列を定義する 例:foo = ‘時速100km’
  4. re.search(), re.findallI(), re.match()を使って検索をかける
  5. findall()はリスト、 search(), match()は文字列を返す。

各メソッドの違い

  • findallは見つかったもの全てを返す。これを貪欲マッチという。
  • searchは最初に見つかったものを返す
  • matchは先頭要素からしか検索しいない。これが難しいが、先頭にその要素がなかったらマッチしないと思っておいてよい。

正規表現はプログラムを組んでそれがどのようにして助けになるかがわかりにくい部分があります。まとめると、検索したい文字列と、検索に使う文字列を定義して(正規表現を定義して)各メソッドを使って検索します。

わかりにくいですが、findallはリスト、search、matchは文字列を返します。

実際のコード

import re
number = '\d+'
zisoku = '時速100km'
search_number = re.search(number, zisoku)
print(search_number.group())#100が見つかりました。

ここで紹介した方法以外にもre.compile()で正規表現オブジェクトを生成して検索するやり方もあります。
詳しくは「pythonの正規表現のオブジェクトの流れ【re.compile()を使う】」をご覧ください。

 
  • このエントリーをはてなブックマークに追加
     

SNSでもご購読できます。

コメントを残す

*

CAPTCHA