读书人

初学python,想请问一个关于正则表达式

发布时间: 2013-06-26 14:29:32 作者: rapoo

初学python,想请教一个关于正则表达式的原生字符串的问题
re.search("^[0\-9]$","-")!=None
正则指引中说因为pattern是以字符串的形式给出的,在字符串中\本来就是表达转意含义,因此应该表达为re.search("^[0\\-9]$","-")!=None才可以正确表示匹配"0、\、-、9的任意一个

那样的话第一个表达式不应该返回false吗?可是为什么是结果是true呢。。 Python 正则表达式
[解决办法]
-在[]内表示范围,\-转义表示减号本身
\字符串内也不是都转义的,只有后面的字符和\结合有歧义才转义,\-在字符串内并不会产生歧义

你上面第一个正则匹配 -, 0, 9 三个字符,所以为true

读书人网 >perl python

热点推荐