当前位置:  开发笔记 > 编程语言 > 正文

Python正则表达式找到所有数字和点

如何解决《Python正则表达式找到所有数字和点》经验,为你挑选了1个好方法。

我正在使用re.findall()从HTML文件中提取一些版本号:

>>> import re
>>> text = "
Test0.2.1.zipTest0.2.1
Test0.2.1" >>> re.findall("Test([\.0-9]*)", text) ['0.2.1.', '0.2.1', '0.2.1']

但我想只得到那些没有以点结尾的那些.文件名可能并不总是.zip所以我不能只在正则表达式中粘贴.zip.

我想结束:

['0.2.1', '0.2.1']

任何人都可以建议使用更好的正则表达式吗?:)



1> Tomalak..:
re.findall(r"Test([0-9.]*[0-9]+)", text)

或者,有点短:

re.findall(r"Test([\d.]*\d+)", text)

顺便说一下 - 你不能逃避字符类中的点:

[\.0-9]  // matches: 0 1 2 3 4 5 6 7 8 9 . \
[.0-9]   // matches: 0 1 2 3 4 5 6 7 8 9 .

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有