0

私は正規表現を使用して文字列を照合しています。これが私のコードです:

r = re.compile(r"#?%s\b" % "apple", re.IGNORECASE|re.MULTILINE)
if r.search("I am eating an apple!"):
   print "success"

「!」Apple の最後に一致しない原因があります...などの句読点を無視できる方法はありますか? ! 語尾に?

4

1 に答える 1

1

あなたのサンプルコードは私のために働きます: http://repl.it/J0t/5

文字列フォーマット演算子はかなり役に立たないものを作成#?apple\bしますが、式が次のすべてに一致することを許可します:#?

#apple
apple
grapple

apple\bも同様に一致します。

あなたのタスクが別の単語の一部ではない完全な単語 apple を持っていることを検証することである場合は、上記のサンプルからのみ一致するようなものをお勧めします\bapple\b#appleapple

于 2013-07-07T05:44:18.640 に答える