Regex 以编程方式删除OBJ文件中的所有面

Regex 以编程方式删除OBJ文件中的所有面,regex,string,3d,Regex,String,3d,我有一个程序,可以从kinect 3d录制中输出OBJ文件。每个obj文件都是一系列顶点和面。顶点如下所示: v 0.2111810.436763 1.052000 脸看起来像这样: f 15734/15734 15560/15560 15559/15559 每个obj文件都有大约100000行顶点和面,因此我需要能够以编程方式删除这些面。任何人都有解决这个问题的办法。我基本上只需要编写这样的代码:“对于每一行,如果它以f开头,请删除这一行中的所有字符。” 有人有什么建议吗?一种方法是在记事本+

我有一个程序,可以从kinect 3d录制中输出OBJ文件。每个obj文件都是一系列顶点和面。顶点如下所示:

v 0.2111810.436763 1.052000

脸看起来像这样:

f 15734/15734 15560/15560 15559/15559

每个obj文件都有大约100000行顶点和面,因此我需要能够以编程方式删除这些面。任何人都有解决这个问题的办法。我基本上只需要编写这样的代码:“对于每一行,如果它以f开头,请删除这一行中的所有字符。”


有人有什么建议吗?

一种方法是在记事本++中加载obj文件

然后使用ctrl+h(替换)

在左下角的搜索模式框中选择“正则表达式”单选按钮 (确保取消勾选匹配新行复选框)

查找内容:
^f.\n

替换为:


这将删除以“f”开头的每一行。如果您希望保留空白行而不是完全删除它们,请从查找字符串的结尾处删除<代码> \n>代码> ./p>您如何处理修改的Objo文件?您不必使用正则表达式来完成此操作。您只需检查第一个字符是否等于f。如果是,则删除该行。如果你真的想使用正则表达式,你可以用
'
替换
'/^f.+/'
。或者你也可以简单地从命令行使用sed,对许多文件来说就像charm一样。所以试试:sed-i“.bak”“/^f/d”*.obj