用python 应用正则表达式提取该字符串中的日期时间字符串。
时间: 2023-12-31 16:06:32 浏览: 146
可以使用re模块中的findall函数来提取字符串中的日期时间字符串,代码示例如下:
```python
import re
s = 'Today is 2022-01-01 and the time is 10:30:00'
pattern = r'\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}'
result = re.findall(pattern, s)
print(result)
```
输出结果为:
```
['2022-01-01 10:30:00']
```
解释一下代码:
首先定义了一个字符串s,其中包含了日期时间字符串。然后定义了正则表达式模式pattern,该模式用于匹配日期时间字符串。具体来说,该模式由两个部分组成,第一个部分是匹配日期的模式,即`\d{4}-\d{2}-\d{2}`,其中`\d`表示数字,`{4}`表示匹配4个数字,`{2}`表示匹配2个数字,因此`\d{4}-\d{2}-\d{2}`可以匹配形如YYYY-MM-DD的日期字符串。第二个部分是匹配时间的模式,即`\d{2}:\d{2}:\d{2}`,其中`\d`表示数字,`{2}`表示匹配2个数字,因此`\d{2}:\d{2}:\d{2}`可以匹配形如HH:MM:SS的时间字符串。两个部分之间用`\s`表示一个空格符。最后使用re.findall函数在字符串s中查找符合模式pattern的所有子串,并将结果存储在result变量中。最后输出result即可。
如果需要提取多个日期时间字符串,只需将s中的多个字符串拼接起来,并将结果存储在一个列表中,然后使用re.findall函数即可。
阅读全文