regexp用于提取年份

use*_*114 1 python regex

给定一个字符串,如何提取正好 4位数的所有序列?

也就是说,因为1234 12 12345 1bc5 9876我想得到[1234, 9876].

我得到了re.findall('\D\d\d\d\d\D'),但是在文本边界上失败(当比赛之前/之后没有角色).


解决方案最好使用Python 2.7,但我想这很普遍,任何语言都可以.

geo*_*org 7

一般的答案令人惊讶地复杂,请参阅此处获取更多信息.但是在这种特殊情况下,我们可以简单地使用单词边界断言\b:

re.findall(r'\b\d{4}\b', ....)
Run Code Online (Sandbox Code Playgroud)