Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Python中的字符串中删除格式为##/#/#/#####的日期?_Python_Python 2.7 - Fatal编程技术网

如何从Python中的字符串中删除格式为##/#/#/#####的日期?

如何从Python中的字符串中删除格式为##/#/#/#####的日期?,python,python-2.7,Python,Python 2.7,我有一个文本文件,其中的字符串以日期开头,格式为##/##/#########################。我一直在研究正则表达式,但不知道如何做到这一点。如果每行的前面总是有10个字符的日期,那么只需将每行的前10个字符与子字符串切掉即可。正则表达式是一个很好的方法。如果它们始终采用该格式,则表达式为: \d{2}/\d{2}/\d{4} 请注意,它不会检查日期的有效性,即月份不是1-12,等等。 python中的一个示例: import re expr = re.compile('\d

我有一个文本文件,其中的字符串以日期开头,格式为##/##/#########################。我一直在研究正则表达式,但不知道如何做到这一点。

如果每行的前面总是有10个字符的日期,那么只需将每行的前10个字符与子字符串切掉即可。

正则表达式是一个很好的方法。如果它们始终采用该格式,则表达式为:

\d{2}/\d{2}/\d{4}
请注意,它不会检查日期的有效性,即月份不是1-12,等等。 python中的一个示例:

import re
expr = re.compile('\d{2}/\d{2}/\d{4}')
line = re.sub(expr, '', input)  # replace all dates with ''

如果您的文件包含“145/10/24045”之类的字符串,此解决方案将不起作用,因为它将替换为“15”。

还可以实现re.findall以字符串形式返回所有日期的列表。提供一些示例数据和您尝试过的代码。