[英]regex to extract data between quotes
如标题所示,字符串为'="24digit number"'
,我想提取""
之间的数字(例如: ="000021484123647598423458"
应该使我为'000021484123647598423458'
)。
有一些答案可以回答如何在"
之间获取数据"
但就我而言,我还需要确认="
存在而没有捕获(还有其他"\\d{24}"
字符串,但它们用于其他用途)”。
我无法修改这些答案来获得所需的信息。
我最新的正则表达式为((?<=\\")\\d{24}(?=\\"))
,字符串为="000021484123647598423458"
。
更新:我想我会使用模式r'^(?:\\=\\")(\\d{24})(?:\\")'
因为我只想捕获数字字符。
word = '="000021484123647598423458"' pattern = r'^(?:\\=\\")(\\d{24})(?:\\")' match = re.findall(pattern, word)[0]
谢谢大家的建议。
您可以像这样:
=(['"])(\d{24})\1
参见regex101.com上的演示 。
Python
:
import re string = '="000021484123647598423458"' rx = re.compile(r'''=(['"])(\\d{24})\\1''') print(rx.search(string).group(2)) # 000021484123647598423458
以下任何一项作品:
>>> st = '="000021484123647598423458"'
>>> import re
>>> re.findall(r'".*\d+.*"',st)
['"000021484123647598423458"']
要么
>>> re.findall(r'".*\d{24}.*"',st)
['"000021484123647598423458"']
要么
>>> re.findall(r'"\d{24}"',st)
['"000021484123647598423458"']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.