假设我有以下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"我需要。
谢谢。
答案 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
如果您发现某些奇怪现象,请考虑将*
替换为*?
以使匹配"而不是贪婪"。