正则表达式提取字符串中的特定元素

2024-09-30 06:24:49 发布

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

我需要从下面的字符串中提取BIN、Tracking和Book标识号

BIN: 1234\nTracking #: 56789\nBook Identification #: 121212

我已经使用Python创建了一个regex,它允许我使用这个来获取BIN编号

^BIN:(.*) 

这允许我在BIN之后获取整个块,但是,我无法计算如何只获取BIN和其他项的值

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


Tags: 字符串httpscombintracking编号regexidentification
2条回答

Live demo

试试这个正则表达式:

^BIN:\s?(\d+)\s?Tracking #:\s?(\d+)\s?Book Identification #:\s(\d+)

您需要添加更多组,如下所示:

^BIN:.*?(\d+).*?#:\s+(\d+).*?#:\s+(\d+)

我使用#作为开始查找跟踪和图书标识详细信息的点。请注意,使用*?的延迟匹配非常重要

这是一个updated example on regex101

输出:

MATCH 1
1.  [5-9]   `1234`
2.  [22-27] `56789`
3.  [51-57] `121212`

相关问题 更多 >

    热门问题