如何在SWIG中链接多个重命名功能?

时间:2013-12-17 06:34:26

标签: swig

我想在SWIG中重命名一些课程。我的大多数课程都是这样的 some_class,我想将其重命名为SomeClass。这很简单:

%replace("%(camelcase)s", %$isclass) "";

但是,我也有以“_t”结尾的类名,我想删除它,因此my_class_t只会变成MyClass。我可以通过以下方式执行此操作:

%rename("%(regex:/^(.*)(_t?)$/\\1/)s", %$isclass) "";

是否有重命名规则允许我同时应用这两个操作?

1 个答案:

答案 0 :(得分:0)

我不确定是否可以链接多个重命名,但是您可以将找到的字符串发送到外部进程,然后在该处执行任何操作。

Advanced renaming support

命令:cmd

输出外部命令cmd,并以字符串形式传递给它 输入。请注意,与所有 其他的,因为它涉及生成单独的进程并将其用于 不建议使用许多声明。该cmd未包含在其中 方括号,但必须以三个“ <”符号终止,例如 %rename(“ command:tr -d aeiou <<<”)(无意义的示例,删除了所有 元音)