调查结果^M";使用pythonre

调查结果^M";使用pythonre,python,regex,Python,Regex,我有一个出现字符“^M”的文件。我想消除所有此类事件 为此,我尝试使用以下代码- re.sub('^M', '', line) 即使多次尝试,我也无法删除它 有谁能告诉我我现在做的有什么问题,并建议在正则表达式中有一个元字符,应该转义,即 re.sub('\\^M', '', line) # 2 backslashes because the backslash needs to be escaped 或 但是,这是一个固定字符串,因此您应该使用str.replace,即 line.rep

我有一个出现字符“^M”的文件。我想消除所有此类事件

为此,我尝试使用以下代码-

re.sub('^M', '', line)
即使多次尝试,我也无法删除它


有谁能告诉我我现在做的有什么问题,并建议在正则表达式中有一个元字符,应该转义,即

re.sub('\\^M', '', line)  # 2 backslashes because the backslash needs to be escaped

但是,这是一个固定字符串,因此您应该使用
str.replace
,即

line.replace('^M', '')

但是,
^
M
并不总是意味着有
^
M
,因为
^M
也可以用来表示ASCII回车(U+0013,或Control-M);Python字符串中的哪个是
\r

line.replace('\r', '')

。。。但是现在已经有一个实用程序可以从文件中删除这些Windows行结尾:
dos2unix

^
是正则表达式中的元字符,应该对其进行转义,即

re.sub('\\^M', '', line)  # 2 backslashes because the backslash needs to be escaped

但是,这是一个固定字符串,因此您应该使用
str.replace
,即

line.replace('^M', '')

但是,
^
M
并不总是意味着有
^
M
,因为
^M
也可以用来表示ASCII回车(U+0013,或Control-M);Python字符串中的哪个是
\r

line.replace('\r', '')

。。。但是现在已经有一个实用程序可以从文件中删除这些Windows行结尾:
dos2unix

您必须转义
^
。因此,您需要使用
^M
。有关这些详细信息,请查阅正则表达式文档。您必须转义
^
。因此,您需要使用
^M
。有关这些详细信息,请查阅regex文档。非常感谢您。。行.replace(“^M”和“”)适用于大多数情况。。还有一些情况下,字符串“^MBGP”不会被替换。行.replace('\r','')也不起作用。。你能帮我吗?我在Mac电脑上运行这个file@SadMad有趣的是,还有
^
M
。如果这些都不起作用,如果没有进一步的细节,我真的无法提供帮助。也许你应该试着打印那一行的
repr
print(repr(line))
,看看里面是否有特殊字符。非常感谢你。。行.replace(“^M”和“”)适用于大多数情况。。还有一些情况下,字符串“^MBGP”不会被替换。行。replace('\r','')也不工作。。你能帮我吗?我在Mac电脑上运行这个file@SadMad有趣的是,还有
^
M
。如果这些都不起作用,如果没有进一步的细节,我真的无法提供帮助。也许您应该尝试打印该行的
repr
print(repr(line))
以确定其中是否有特殊字符。