我想知道为什么这种正则表达式的编译占用了我 70% 的 RAM,导致频繁交换和 16 的平均负载:
strcpy(regexStr,"^[a-z]{0,20000}$" );
regcomp( ®ex , regexStr , REG_NOSUB | REG_EXTENDED );
执行时间以分钟为单位(必须先终止进程)。(2,000,而不是 20,000)的执行时间^[a-z]{0,2000}$
约为 100 毫秒,这对我来说非常重要。
我用它来检查模式并同时检查长度。Ï 发现正则表达式对两者都很方便。难道我做错了什么 ?