在C中克隆(编译)regex_t结构的最佳方法

时间:2016-04-25 16:44:37

标签: c regex

查看regex_t man page,有一个regcomp()函数可以从字符串和双重函数regex_t编译regfree()结构,以释放regex_t (我知道由于regex_t在内部使用了一些动态内存,因此需要释放。)

但是,该手册页未提及将已编译的regex_t克隆到另一个regex_t结构中的函数。有没有办法做到这一点?

我能想到的唯一机制是从源字符串重新编译,但我想这比仅在regex_t级别复制效率低。

1 个答案:

答案 0 :(得分:0)

为什么“克隆”? regex_t不包含与其进行比较的输入的任何信息(使用regexec)。它只是正则表达式的“编译”版本。您不必复制它。只是使用它。