cod*_*man 1 python string text
我有以下字符串:
text = 'adsfklaiin2007daf adf adflkajf;j 2008afadfkjkj'
Run Code Online (Sandbox Code Playgroud)
我想回来:
2007 2008
Run Code Online (Sandbox Code Playgroud)
有什么办法在Python中做到这一点?
这是正则表达式的经典案例.使用re python库你会得到:
re.findall('\d{4}', "yourStringHere")
Run Code Online (Sandbox Code Playgroud)
这将返回字符串中找到的所有四位数字项的列表.只需根据需要调整正则表达式.
import re
num = re.compile('[\d]*')
numbers = [number for number in num.findall(text) if number]
['2007', '2008']
Run Code Online (Sandbox Code Playgroud)