2011-01-25 123 views
0

我有这样的代码:Python:正则表达式...不工作?

# If the username isn't alpha-numerics (inc: _, -, .,) 
    if re.match('^[a-zA-Z0-9 _\-\.]+$', repName) == False: 
     print 'DECLINE: '+repName 
    else: 
     print 'ACCEPTED: '+repName 

当我测试它反对这个字符串:ɢᴀꜱᴛяɪᴄ(这是从一个网站抓起) 我得到这个返回:

修:É¢A' “30±”“

这是怎么回事?另外为什么Python似乎改变了字符串?

回答

5

不成功re.match不是False。它是None

但你也可以试试这种方法:

if re.match('^[a-zA-Z0-9 _\-\.]+$', repName): 
    print 'ACCEPTED: '+repName 
else: 
    print 'DECLINE: '+repName 
+0

下降:北京时间¢€A'EOE±A'>Ñɪá'“ – Tommo 2011-01-25 08:33:24