RE正規表現のまとめ(二)

2003 ワード

三、常用方法
1,match(rule,targetString[,flag]):文字列の先頭からデフォルトで一致し、先頭位置が一致しない場合は空を返します.1番目のパラメータはマッチングルール、2番目のパラメータはターゲット文字列、3番目のflagはオプションのルールオプションです(修飾子は、大文字と小文字を区別するかどうか、複数行のマッチングなど、正規表現のマッチング方法を制御します).group(num)またはgroups()マッチングオブジェクト関数を使用して、マッチング式を取得します.
2、search(rule,targetString[,flag]):最初の条件を満たすオブジェクトをすべての文字列範囲で一致させ、最初のパラメータは一致規則、2番目のパラメータはターゲット文字列、3番目のflagはオプションの規則オプションである
3、findall(rule,target[,flag]):ターゲット文字列に条件を満たすすべてのオブジェクトを一致させ、最初のパラメータは一致規則であり、2番目のパラメータはターゲット文字列であり、3番目のflagはオプションのルールオプションである
4、sub(rule,replace,target[,count]):ターゲット文字列に一致する文字列を検索し、指定した文字列に置き換える.最大置換回数を指定し、デフォルトですべてを置換し、置換された文字列を返すことができます.1番目のパラメータは正規規則で、2番目のパラメータは指定した置換文字列で、3番目のパラメータはターゲット文字列で、4番目のパラメータは最大置換回数です(オプション).
5、finditter(rule,target[,flag]):マッチングに成功した後に反復器を返し、1回のみ反復でき、1番目のパラメータはマッチングルール、2番目のパラメータはターゲット文字列、3番目のflagはオプションのルールオプション
6、split(rule,target[,maxsplit]):スライス関数.指定した正規規則を使用して、ターゲット文字列に一致する文字列を検索し、それらを境界として文字列をスライスします.1番目のパラメータは正規規則で、2番目のパラメータはターゲット文字列で、3番目のパラメータは最大スライス回数です(オプション).スライス後のサブストリングのリストを返します
修飾子:
re.I
照合を大文字と小文字に敏感にしない
re.L
ローカライズ識別(locale-aware)マッチングを行う
re.M
複数行一致、影響^および$
re.S
使改行を含むすべての文字を一致させる
re.U
Unicode文字セットに基づいて文字を解析します.このマークの影響w,W,b,B.
re.X
可読性を高めるには、スペースと#の後のコメントを無視します.
>>>import re


>>>string = 'this is a string'

# match    
>>>pat = re.match(r'\w{4}', string, re.I)
>>>print(pat)
<_sre.sre_match object="" span="(0," match="this">
>>>pat.group()
'this'

#    
>>>pat = re.match(r'\s', string, re.I)
>>>print(pat)
None

# search
>>>pat = re.search(r'(\w{6})', string, re.I)
>>>print(pat)
<_sre.sre_match object="" span="(10," match="string">
>>>pat.group()
'string'
>>>pat.groups()
('string',)

未完待续..