Pythonで正規表現を使う方法
Pythonで正規表現を使う方法を紹介します。
1.問題点
下記のスクリプトを書きました。
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
str = 'abc123def'
print str
このスクリプトを修正して、変数strに含まれる数字"123"だけを出力したいのですが、方法が分かりません。
ということで、Pythonで正規表現を使う方法を紹介します。
正規表現の詳細については、ここでは割愛します。
2.Pythonで正規表現を使う
正規表現を使うには次のようにします。
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
import re
str = 'abc123def'
result = re.search('\d{3}', str)
print result.group()
3.解説
Pythonの正規表現モジュール「re」をインポートします。
import re
パターンに一致するか調べるには、search()を使用します。
result = re.search('\d{3}', str)
フォーマットは次のとおりです。
- 第1パラメータ:パターン
- 第2パラメータ:対象の文字列または変数
戻り値のresultには一致結果がはいっています。group()メソッドを使うことでパターンにマッチした内容すべてを返却します。
サンプルでは数字3文字にマッチした"123"が出力されます。
パターンマッチの関数はsearch()の他にmatch()がありますが、これは文字列の先頭がパターンマッチするかを調べるためのものです。
Posted by yujiro このページの先頭に戻る
- PythonでJSONファイルの日本語キーを読む方法
- PythonでEUC-JPのファイルを読み込んで正規表現を使う方法
- Pythonで「SyntaxError: Non-ASCII character」というエラーの対処
- Pythonで文字列を取得する方法
- Pythonのシングルクォーテーションとダブルクォーテーションの違い
- Pythonで改行せずに出力する方法
- Pythonでshebang行を書く方法
- Pythonで改行を含む複数行データを代入する方法(ヒアドキュメント)
- Pythonで"Hello World"を出力する方法
トラックバックURL
コメントする
greeting