Python 将正则表达式与a+;及-

Python 将正则表达式与a+;及-,python,Python,当前正在使用正则表达式以读取具有顶点的文件。此代码使用的特定文件行是 刻面法线-0.000000e+01 0.000000e+001.000000e+00 我的代码是 f = open('file.txt') for line in f: e1 = re.findall( r'(?<=\w{5}\s\w{6}\s[-\d{1}]\.\d{6}\w{1})' #Look ahead r'[-+]\d{2}' # Target Point

当前正在使用正则表达式以读取具有顶点的文件。此代码使用的特定文件行是

刻面法线-0.000000e+01 0.000000e+001.000000e+00

我的代码是

f = open('file.txt')
for line in f:
    e1 = re.findall(
        r'(?<=\w{5}\s\w{6}\s[-\d{1}]\.\d{6}\w{1})' #Look ahead
        r'[-+]\d{2}' # Target Point
        r'(?=\w{1}[-+]\d{2}\s[-\d{1}]\.\d{6}\w{1}[-+]\d{2}\s[-\d{1}]\.\d{6}\w{1}[-+]\d{2})', #Look Back
    line)
print(e1)

这应该与+01匹配,但它不会打印出任何内容。我试过用几种方法修改代码,但似乎无法理解。我也重读了几次文档,但似乎无法找出我做错了什么

我测试了你的正则表达式,目标点正则表达式看起来还可以。您的实际问题似乎是您的lookahead正则表达式与“facet normal-0.000000e”不匹配。为什么不简单地拆分字符串,让
float()
进行解析?嘿,谢谢您找到了这个错误,我让它工作了。出于好奇,我该如何让float进行解析?对迟来的答复表示歉意。
       r'[-+]\d{2}' # Target Point