使用simple examp学习正则表达式

2024-06-01 03:12:24 发布

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

我一直在阅读一些文档和示例。我有一些意想不到的惊喜,想知道是否有人能帮我理解regex在做什么

string = "(ID: 10427645)" ## the ID length can vary

c = re.findall(r"\d*", string)
print(c)
## ['', '', '', '', '', '10427645', '', '']

我希望它只打印数字,但它似乎为字符串中不匹配的每个项目返回一个空字符串

如何告诉regex只返回一个字符串(长度不同)


Tags: the项目字符串文档reid示例string
1条回答
网友
1楼 · 发布于 2024-06-01 03:12:24

*表示“0或更多”。所以它匹配所有位置,不管是否有数字

要仅匹配1个或多个数字,请使用+

>>> re.findall(r"\d+", string)
['10427645']

相关问题 更多 >