首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

初学python,想请问一个关于正则表达式的原生字符串的有关问题

2013-06-26 
初学python,想请教一个关于正则表达式的原生字符串的问题re.search(^[0\-9]$,-)!None正则指引中说因

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

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

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

热点排行