unc = r'\\foo\bar'
string1 = r'\\foo\bar'
string2 = r'\\\\foo\\bar'
if unc == string1:
print "I wish to make a complaint"
if re.match(string1, unc):
print "Ello miss"
if re.match(string2, unc):
print "Sorry I have a cold"
输出是:
I wish to make a complaint
Sorry I have a cold
似乎 re.match 操作重新转义了文字字符串,因此“Ello miss”永远不会发生。
谁能解释为什么我必须在首先将字符串设置为文字时重新转义反斜杠?
我想在配置文件中保留一个 UNC 路径列表,并且我不想在其中转义字符串。虽然比较器工作,但有一个可用的正则表达式选项会很有用。