正则表达式匹配特殊字符

时间:2017-01-03 18:41:26

标签: python regex

我目前正在使用Python中的大型数据处理脚本,该脚本使用子进程从文件中提取文本字符串。我收到的字符串格式为:

-R##/##/##/##

这方面的一个例子是-R-120/-115/-30/-20(四个数字可以是正数也可以是负数)

我正在尝试使用正则表达式来匹配第一个和第三个数字,因此对于上面的示例,我需要-120-30

有没有人能引导我朝着正确的方向前进,以便采取干净的方式来做这件事?

1 个答案:

答案 0 :(得分:1)

你可以在python中使用这个正则表达式和2个捕获组来获取你的数字:

>>> s = '-R-120/-115/-30/-20'
>>> print re.findall(r'^\D*?([-+]?\d+)\D*?[-+]?\d+\D*?([-+]?\d+)', s)

[('-120', '-30')]

RegEx Demo