私は次のことを行い、指定された行を印刷したいと思います:
a=set(['bye', 'hits', 'hi'])
if r'.i*' in a:
print "This is what I want to see."
else:
print "Sadly, this is what I actually see."
残念ながら、in
キーワードはセットに対して正規表現検索を実行していません。
これを行う方法はありますか?
悲しいことに、ここにループが必要です:
import re
a = {'bye', 'hits', 'hi'}
if any(re.match(r'.i*',s) for s in a):
print "see this"
私は を使用re.match
しましたが、あなたがそれを望んでいるのか、それとも を望んでいるのかは不明ですre.search
。
注:r'my string'
意味するのは
、正規表現ではなく、生の文字列です。生の文字列を使用すると、通常のエスケープ シーケンス ( で始まるもの) がエスケープされないことが保証されます。モジュールはエスケープシーケンスも使用するため、これは正規表現で役立ちます。生の文字列を使用することで、文字列を二重にエスケープする必要がなくなります (例: )。\
re
'a\\double escaped string'