好吧,我有一个字符串:
string ="01. 01 22 3 456 0001 02 . 002 3. 0003 4 . 0004 05- 0005 06 - 0006 7- 0007 8 - 0008 09. 0009 10. 0010"
正如您所看到的那样,它是一个列表。重要的是点或hifen之后的数字/数字。并且每个数字或一组数字必须成为列表中的项目:
["01", "22", "3", "456", "0001", "002", "0003", "0004"....etc]
我在正则表达式附近工作,我得到了这个列表:
['01.', '02 .', '3.', '4 .', '09.', '10.', '05-', '06 -', '7-', '8 -']
现在我需要从那里删除它。 拳头是str类型,第二个是类型列表,我不知道用哪种方法来解决它。
有什么想法吗?
答案 0 :(得分:2)
您可以使用re.findall
:
import re
string ="01. 01 22 3 456 0001 02 . 002 3. 0003 4 . 0004 05- 0005 06 - 0006 7- 0007 8 - 0008 09. 0009 10. 0010"
results = re.findall('(?<=\s)\d+(?=\s[\d$])|(?<=\s)\d+(?=$)', string)
输出:
['01', '22', '3', '456', '0001', '002', '0003', '0004', '0005', '0006', '0007', '0008', '0009', '0010']