我想知道一个字符串foo=='某个字符串'。这在大多数情况下都有效。但是,我意识到,有时foo可能包含转义序列,如'\n'或'\t',我想解释一下这一点。有什么快速的或者内置到python2.7中的东西可以帮助我解决这个问题吗?或者我必须基本上通过所有的转义序列,并确保他们没有侵扰我的字符串foo?你知道吗
下面是一个例子,如果你仍然不确定:
foo = '\tZebra'
所以当我打印foo时
Zebra
而且我不能很容易地确定在对字符串文本测试foo时是否没有转义序列,例如'\t':
foo == 'Zebra'
返回False。你知道吗
我想到的是用这些台词:
if 'Zebra' in foo:
bar()
但这不仅仅是Python的转义序列。例如:
foo = 'ttZebra'
if 'Zebra' in foo:
print 'bar'
这确实会打印“bar”。你知道吗
那么,在使用一个字符串之前,如何快速地删除它的所有转义序列呢?另外,如果这有帮助的话,我知道我的所有字符串都不包含空格,因为它们都来自.split()列表。你知道吗
回答:
我试过使用.strip(),这很有帮助,但我的程序仍然无法运行。原来我所有的文件都有UTF-8 BOMs。但是,BOM序列总是相同的,所以很容易处理。我仍然使用.strip()来解释所有转义序列。你知道吗
如果要从字符串的开头和结尾剥离任何序列,请使用
strip()
如果您想让它在字符串的中间也被剥离,您可以执行以下操作
上面的正则表达式去掉了所有control characters。你知道吗
相关问题 更多 >
编程相关推荐