アドレスのさまざまな式を一致させようとしています:
例: 「398 西ブロードウェイ」
W. または E. (東) または Pl. に一致させたいと思います。場所...など
この正規表現を使用すると非常に簡単です
(W.|West)
例えば。
それでも、python reモジュールは、入力しても何にも一致しません
>>> a
'398 W. Broadway'
>>> x = re.match('(W.|West)', a)
>>> x
>>> x == None
True
>>>
re.match
入力文字列の先頭に一致します。
どこでも一致させるには、re.search
代わりに使用します。
>>> import re
>>> re.match('a', 'abc')
<_sre.SRE_Match object at 0x0000000001E18578>
>>> re.match('a', 'bac')
>>> re.search('a', 'bac')
<_sre.SRE_Match object at 0x0000000002654370>
Python は、正規表現に基づく 2 つの異なるプリミティブ操作を提供します: re.match() は文字列の先頭でのみ一致をチェックしますが、re.search() は文字列内の任意の場所で一致をチェックします (これは Perl がデフォルトで行うことです) )。
.match()
検索を文字列の最初の文字から開始するように制限します。.search()
代わりに使用してください。任意の文字に一致することにも注意してください.
(改行を除く)。リテラルのピリオドに一致させたい場合は、それをエスケープします (\.
プレーンではなく.
)。