如何使用regex从Python中的字符串中获取密钥信息?

2024-10-06 14:33:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个字符串,我想从中提取关键信息:

gbk_kings_common_20171201_20180131_66000.0k_2017-12-01_TO_2018-01-31_id12_1277904128.csv

也就是说,我想得出以下结论:

  1. 文件标识符,例如gbk_kings_common_20171201_20180131
  2. 大小,例如330.0k
  3. 日期,例如2017-12-01_TO_2018-02-31
  4. id的类型,例如id12_12771231518

但是我在编译regex时遇到了一个困难,因为文件标识符的长度总是可以改变的,尽管其余的信息在用逗号分隔时是非常固定的


Tags: 文件csvto字符串信息id类型标识符
1条回答
网友
1楼 · 发布于 2024-10-06 14:33:48

您可以使用模式r'(.*)_(.*)_([\d-]+_TO_[\d-]+)_(id[\d_]*)来搜索字符串

>>> import re
>>> s = "gbk_kings_common_20171201_20180131_66000.0k_2017-12-01_TO_2018-01-31_id12_1277904128.csv"
>>> sre = re.search(r'(.*)_(.*)_([\d-]+_TO_[\d-]+)_(id[\d_]*)', s)
>>> file_id, size, date, type_id = sre.groups()
>>> print (file_id, size, date, type_id)
gbk_kings_common_20171201_20180131 66000.0k 2017-12-01_TO_2018-01-31 id12_1277904128

相关问题 更多 >