私は[^ ab]がaまたはb以外の文字を捕まえることを知りました。 [^ ab] *は、0または複数の文字と一致する必要があります。いずれもaまたはbではありません。[^ ab] *とaとは何が一致しますか?
しかし、pythonは何らかの形で[^ ab] *に一致します。
pattern = '[^ab]*'
str = 'a'
r = re.compile(pattern)
m = r.match(str)
if m is None:
print 'No match'
else:
print 'match'
このコードスニペットは一致を出力します。 ^の使用法を理解するのに間違っているか、コード内に何らかの誤りがあったと思われます。
0文字に一致し、いずれもaまたはbではありません。 – melpomene
「a」はどのようにマッチしていますか? – user3828311
'*'はあなたを混乱させ、 '^'はあなたを混乱させません。 – Jason