Memoize2

Python 正規表現オブジェクトで複数のオプションを設定する

Perl で言うところの m/re/ims のように複数のオプション(flags)を設定するにはパイプで区切って re.I | re.M | re.S のようにする。 例:


>>> import re

# サンプルテキスト
>>> s = """BEGIN TEXT
... BEGIN BODY
...   bla bla bla
... END BODY
... END TEXT"""

# 行頭が BEGIN BODY の行から、行頭が END BODY の部分までマッチする正規表現を作る
# カレント(^)が各行の先頭にマッチし、ドット(.)が改行にもマッチしなければいけない
>>> bodyRgx = re.compile(r'^BEGIN BODY.+^END BODY', re.DOTALL | re.MULTILINE)

>>> m = bodyRgx.search(s)
>>> m.group(0)
'BEGIN BODY\n  bla bla bla\nEND BODY'

参考: 正規表現クックブック

 

Last modified: 2016-10-17

Page Top

Index

Bw

Author: 中村 心 Shin Nakamura, Email: sn(at)i.basicwerk.com


© Shin Nakamura/BasicWerk 2008 - 2017