首页 > 解决方案 > 有没有办法使用正则表达式从输入中获取一个或多个变量?

问题描述

假设我有一个程序有这样的输入

字符串28东西82000

我想获取嵌入字符串的日期,这样我就可以得到:

day = 28
month = 8
year = 2000

如何使用正则表达式实现这一点?

8 月不能明确表示数字,也可以写成“八月”。

这不是没有选项的标记为重复项的情况。

如果我得到一个包含以下内容的列表:

字符串282000 年8

使用该解决方案,我只能得到[28, 2000],如果数字等于或小于 12,则无法知道它是一个月还是一天。

标签: python

解决方案


您可以使用re.findall

s = 'string28something8words2000'
day, month, year = map(int, re.findall('\d+', s))

推荐阅读