如何使用re.match查找数字?

时间:2017-03-30 14:48:18

标签: python regex python-3.x

我正在尝试使用python help(pdf)模块:

re

我为res设置了import re res = re.match(r"\d+", 'editUserProfile!input.jspa?userId=2089') print(res) 类型,但如果我将None替换为match,我可以找到findall

你知道问题出在哪里吗?

1 个答案:

答案 0 :(得分:2)

问题是您正在使用match()搜索字符串中的子字符串。

方法match()仅适用于整个字符串。如果要在字符串中搜索子字符串,则应使用search()

正如评论中khelwood所述,您应该看一下:Search vs Match

<强>代码:

import re
res = re.search(r"\d+", 'editUserProfile!input.jspa?userId=2089')
print(res.group(0))

<强>输出:

2089

或者,您可以使用.split()来隔离用户ID。

代码:

s = 'editUserProfile!input.jspa?userId=2089'
print(s.split('=')[1])

<强>输出:

2089