Python-正则表达式:从文本文件中提取关键字后的元组列表

我想实现此处建议的简化版本,以从OpenFOAMblockMeshDict文件导入一些顶点,然后使用FreeCAD对其进行可视化。


我感兴趣的文件部分是(xi yi zi)浮点数的元组列表,位于vertices关键字后的括号之间。该文件如下所示:


vertices

(

    (1 2 3)

    (3 4 5)

    ...

)

我可以使用以下命令从与python脚本相同的文件夹中读取文件:


import os

os.chdir(os.path.dirname(__file__))

with open("blockMeshDict", "r") as f:

    s=f.read()

但是当我尝试在verticeswith之后提取括号之间的内容时:


import re

r1=re.search(r'vertices\n\((.*?)\)', s)

print r1.group(1)

我得到了错误:


键入'exceptions.IndexError:没有这样的组


我不知道如何解决它。最后,我想提供一个元组列表,[(x1,y1,z1),(x2,y2,z2)...]如果您能帮助我知道如何在Python 2.7中实现这一点,我将不胜感激。


拉莫斯之舞
浏览 370回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python