2012-04-03 256 views

回答

6

您需要提供re.compile()字符串,而当前的正则表达式将只匹配单个字符,请尝试更改为以下:

import re 

pattern = re.compile(r'^[A-Z\d]+$') 

现在可以测试字符串,看是否匹配该模式通过使用pattern.match(some_string)

请注意,我使用了一个raw string literal,它确保正确处理反斜杠。

^在开始和$末只在串并只在字符串的结尾$比赛的开始被称为锚,^的比赛,他们是必要的,因为你指定你想只匹配字符串它们完全是大写字母或数字,否则你只能匹配一个子字符串。

1

正确的方法是:

re.compile(r'^[A-Z\d]+$') 
相关问题