使用Python Regex中的re.search来分隔x和y坐标

时间:2015-03-09 19:57:11

标签: python regex

假设我有以下LaTex代码段:

  & $(-1,1)$
  & $(0,\infty)$

我如何在python中使用正则表达式来将坐标对分离为x和y组件?我想为此使用re.search。

例如,对于上述细分,我希望收到:

x: -1 y: 1
x: 0 y: \infty

目前我正在使用:

c = map(str,re.findall(r'-?\S',range))
a = c[1]
b = c[3]

然而,这仅匹配整数,而不是" \ infty"我需要。

谢谢。

1 个答案:

答案 0 :(得分:2)

怎么样:

import re

lines = '''  & $(-1,1)$
  & $(0,\infty)$ '''

matches = re.findall(r'\((.*),(.*)\)', lines)

for (a,b) in matches:
    print "x: %s  y: %s" % (a,b)

输出

x: -1  y: 1
x: 0  y: \infty

如果您发现某些奇怪现象,请考虑将*替换为*?以使匹配"而不是贪婪"。