Python regex从字符串中提取数据

2024-09-28 21:53:48 发布

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

我有一个文本文件,行的格式如下:

c="etc etc etc" 124:1 124:1||r="TrNAP etc"||c="etc etc" 124:10 124:10

引号中的文字随着行的变化而变化,数字也是如此。否则格式为常量。数字表示其他文档中引号中文本的行号和字号(line#:word#)。你知道吗

有人能提供一些示例regex代码来提取line#:word#数字吗?谢谢!你知道吗


Tags: 文档文本示例格式lineetc数字引号
3条回答

对于包含所有变量的整行,请使用:

c="([^"]+)" (\d+):(\d+) (\d+):(\d+)\|\|r="([^"]+)"\|\|c="([^"]+)" (\d+):(\d+) (\d+):(\d+)

https://regex101.com/r/qY9kG2/1

>>> import re
>>> c = '"etc etc etc" 124:1 124:1||r="TrNAP etc"||c="etc etc" 124:10 124:10'
>>> print re.findall(r"(\d+):(\d+)", c)
[('124', '1'), ('124', '1'), ('124', '10'), ('124', '10')]

您可以使用以下选项:

(\d+:\d+)

DEMO

相关问题 更多 >