1

私は次のコードを使用しています

str = fnmatch.translate(u'ö')
print str

しかし、それは次のように印刷されます

'\ö'

足りないものはありますか?

4

1 に答える 1

2

fnmatch.translateの目的は、シェルパターンを正規表現に変換することです。非ASCII文字の前にバックスラッシュを追加することは、可能な限り簡潔ではないかもしれませんが、それでも正規表現として適切に機能します。

In [25]: re.match('\ö', u'ö')
Out[25]: <_sre.SRE_Match object at 0x92fef38>

バックスラッシュは、特定の文字(たとえば、数字、、、、、、 ...)の前にある場合にのみ特別な意味を持ちます。バックスラッシュAが他の文字の前にある場合、バックスラッシュは無視されます。bBd'ö'

于 2012-10-05T22:30:45.857 に答える