如何删除;文件中的字符没有扩展名的文件-Python 2.7
所以我有一个任务(Python2.7)来处理一个没有扩展名的文件。它的第一行有一个日期:如何删除;文件中的字符没有扩展名的文件-Python 2.7,python,regex,python-2.7,file,io,Python,Regex,Python 2.7,File,Io,所以我有一个任务(Python2.7)来处理一个没有扩展名的文件。它的第一行有一个日期: 2016.03.22. 但当我从文件中读取并打印出来时,我得到:ďż2016.03.22. 当扩展名为.txt时不会发生这种情况,但我不能使用它。我试过这个正则表达式: def checkDate(line): return re.search('(\d{4}\.\d{2}\.\d{2}\.)', line) 由于某些原因,它找不到它,返回None。我试过了,它看到的图案没有奇怪的字符 是否有任
2016.03.22.
但当我从文件中读取并打印出来时,我得到:ďż2016.03.22.
当扩展名为.txt时不会发生这种情况,但我不能使用它。我试过这个正则表达式:
def checkDate(line):
return re.search('(\d{4}\.\d{2}\.\d{2}\.)', line)
由于某些原因,它找不到它,返回None。我试过了,它看到的图案没有奇怪的字符
是否有任何方法可以在不写入整个文件的情况下将其缩减?首先,对字符串应用
r
,如re.search(r'(\d{4}.\d{2}.\d{2}.\d{2}q.),line)
,其次,我在示例字符串中看不到任何q
,显然,不会有匹配项。抱歉,这里只是一个输入错误,但请在pyregex上检查:(\d>){4} \.\d{2}\.\d{2}\.)“
。r
的作用是什么?Python不关心文件扩展名。如果您在一个文件中看到随机的额外字符,但在另一个文件中看到的是不同名称的字符,则您的文件不相同。您可能正在使用文本编辑器(如notepad.exe
)创建文件,该编辑器会在文件前面添加一些额外的字节用于指示您正在使用的字节顺序或编码的文件。@MattSom:它使字符串为“原始”,因此不会解释转义序列。@Blckknght您是对的。重新创建了文件,但字符现在不在那里。一定是记事本,我用过,当然。非常感谢。