gpt4 book ai didi

java - STEP 文件中实例的正则表达式?

转载 作者:行者123 更新时间:2023-12-01 18:33:06 26 4
gpt4 key购买 nike

我必须解析来自不同 CAD 系统的一些 STEP 文件 (ISO-10303-21),并且它们的结构总是不同。以下是可能出现的形式:

#95=STYLED_ITEM('',(#94),#92);
#12 = CARTESIAN_POINT ( 'NONE', ( 1.213489432997839200,
5.617300827691964000, -7.500000000000001800 ) ) ;
#263 = TEST ( 'Spaces must not be ignored here' ) ;

我认为正则表达式会对我有所帮助,所以我创建了这个( http://rubular.com/r/EtJ25Hfg77 ):

(\#\d+)\s*=\s*([A-Z_]+)\s*\(\s*(.*)*\s*\)\s*;

这给了我:

Match 1:
1: #95
2: STYLED_ITEM
3:

Match 2:
1: #12
2: CARTESIAN_POINT
3:

Match 3:
1: #263
2: TEST
3:

所以前两组正在按预期工作。但我还需要括号内的属性,如下所示:

Match 1:
1: #95
2: STYLED_ITEM
3: ''
4: (#94)
5: #92

Match 2:
1: #12
2: CARTESIAN_POINT
3: 'NONE'
4: ( 1.213489432997839200, 5.617300827691964000, -7.500000000000001800 )

Match 3:
1: #263
2: TEST
3: 'Spaces must not be ignored here'

请帮我找到最后一组的正确表达式(目前是(.*))。

最佳答案

具有非商业用途的 AGPL 许可证,JSDAI 是用于处理 STEP 文件的免费开源 Java 工具包

http://www.jsdai.net/

STEPcode 项目具有 BSD 许可证,因此始终免费且开源,它生成 C++ 和 python API 以及示例 STEP 文件读取器/写入器,其他开源项目(例如 BRL-CAD、SCView 和 OpenVSP)也使用该项目。

www.stepcode.org

OpenCasCade 有 C++,pythonOCC 有 python,node-occ 有 javascript API,用于处理从 STEP 翻译的数据,并且也是免费和开源的。 OCE 可跨更多平台工作并修复更多错误

https://github.com/tpaviot/oce

关于java - STEP 文件中实例的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23246867/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com