m.py 发表于 2023-1-6 07:46:58

怎么用正则表达式将时间后面的数据提取出来?

怎么将时间后面的数据提取出来?
15:37:29.2885|   79   40   73   80   78   38   01

学习编程中的Ben 发表于 2023-1-6 08:22:35

本帖最后由 学习编程中的Ben 于 2023-1-6 08:30 编辑

这个我会
import re

str = "15:37:29.2885|   79   40   73   80   78   38   01"

patterm = '.*?:.*?:.*?|\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)'
match = re.findall(patterm, str)
k = match
print(k)


记住,提取出来的东西都在match里(就是那个k),不要提取match

这个match和列表类似,如果要提取单个元素就match、match

学习编程中的Ben 发表于 2023-1-6 08:31:14

如果我的回答对你有帮助,请评最佳答案!

wp231957 发表于 2023-1-6 09:02:56

>>> s="15:37:29.2885|   79   40   73   80   78   38   01"
>>> s.split("|")
'   79   40   73   80   78   38   01'
>>> s.split("|").split()
['79', '40', '73', '80', '78', '38', '01']
>>>

学习编程中的Ben 发表于 2023-1-6 09:13:51

wp231957 发表于 2023-1-6 09:02
>>> s="15:37:29.2885|   79   40   73   80   78   38   01"
>>> s.split("|")
'   79   40   73   8 ...

用正则!!!

wp231957 发表于 2023-1-6 09:19:37

学习编程中的Ben 发表于 2023-1-6 09:13
用正则!!!

连导入模块(import re)都省略了   
你用正则?????

isdkz 发表于 2023-1-6 09:23:21

学习编程中的Ben 发表于 2023-1-6 09:13
用正则!!!

能不用正则就不用正则

isdkz 发表于 2023-1-6 09:24:11

>>> s = "15:37:29.2885|   79   40   73   80   78   38   01"
>>> s.split()
['79', '40', '73', '80', '78', '38', '01']
>>>

学习编程中的Ben 发表于 2023-1-6 09:26:03

isdkz 发表于 2023-1-6 09:24


你看看标题行不:怎么用正则表达式将时间后面的数据提取出来
页: [1]
查看完整版本: 怎么用正则表达式将时间后面的数据提取出来?