不要使用正则表达式来考虑空格和引号

时间:2012-12-18 09:46:54

标签: python regex python-2.6

我有以下字符串:

Values: Fail.123/urs/temp/lib.000

我需要创建一个不考虑空格和“”的正则表达式。它也不应该区分大小写。 如果我将传递上面的字符串(Values: Fail.123/urs/temp/lib.000)。它还会显示以下字符串:

value:Fail.123/urs/temp/lib.000 
Value:fail.123  /urs/temp/Lib.000
value:"fail.123 /urs/temp/Lib.000

2 个答案:

答案 0 :(得分:1)

以下正则表达式将忽略空格和"(引号):

[^\s"]*

PS:我使用.NET正则表达式对此进行了测试,但它应该适用于python

答案 1 :(得分:1)

以下内容应该给你一个想法:

In [76]: cmpkey = lambda s:re.sub(r'[\s"]', '', s).lower()

In [77]: cmpkey('Values: Fail.123/urs/temp/lib.000') == key('values:"fail.123 /urs/temp/Lib.000')
Out[77]: True

P.S。我只是注意到在你的例子中,“value”与“values”可以互换使用。那是为什么?