RegEx:提取未知数量的未知长度,带有分隔符和要忽略的字符

时间:2018-06-28 02:48:04

标签: python regex

我正在寻找以下格式的数字:

  

[数字] ['/'或''或'\'可能,忽略]:['/'或''或'\'   可能,忽略] [数字] ['/'或''或'\'可能,忽略]:...

例如:

  

“ 4852 /:5934:439028 /:\\ 23”

将提取:['4852','5934','439028','23']

2 个答案:

答案 0 :(得分:0)

使用re.findall提取所有出现的模式。请注意,您应该使用双反斜杠在引号中表示文字反斜杠。

>>> import re
>>> re.findall(r'\d+', '4852/: 5934: 439028/:\\23')
['4852', '5934', '439028', '23']
>>>

答案 1 :(得分:0)

Python确实有一个正则表达式软件包2.73.*

您可能要使用的函数是.split()函数

一个代码段应该是

import re
numbers = re.split('[/:\]', your_string) 

如果仅根据那些非字母数字字符拆分它,则上面的代码将起作用。但是您也可以根据所有非数字字符将其拆分。像这样

numbers = re.split('\D+', your_string)

或者您可以

numbers = re.findall('\d+',your_string)

荣誉!