2

短編小説:

>>> re.compile(r"\w*").match(u"Français")
<_sre.SRE_Match object at 0x1004246b0>
>>> re.compile(r"^\w*$").match(u"Français")
>>> re.compile(r"^\w*$").match(u"Franais")
<_sre.SRE_Match object at 0x100424780>
>>> 

正規表現^を含むUnicode文字の文字列と一致しないのはなぜですか?$私が理解している限り^、文字列(行)の始まりと$-の終わりを表します。

4

1 に答える 1

5

UNICODEフラグを指定する必要があります。指定しない場合は、文字''を含まないと\w同等です。[a-zA-Z0-9_]ç

>>> re.compile(r"^\w*$", re.U).match(u"Fran\xe7ais")
<_sre.SRE_Match object at 0x101474168>
于 2010-08-31T08:36:54.193 に答える