Rust官方库自带的正则表达式有严重的性能问题(版本 1.51.0)
这是我和多种语言对比测试图:
测试方法:
每编程语言执行10次测试。每次测试循环1000次匹配字符串中的四个版本号并且替换。
各个语言的正则均使用自带的官方库。
可以看到Rust的速度比Go、ndoe.js、Python、msvc++慢了好几倍,前几个非常平均,性能在伯仲之间
不甘心,换成了PCRE2,这下性能领先了,可以看到,是最快的:
但本质上PCRE2是google的C++正则库,Rust中的PCRE2只是做了个接口。
本来Rust接近C的速度是其宣传点和优势,标准库居然这么拉垮。对于像我这种完美主义的人来说,实在是一种巨大的心理打击。
结论:Rust的成熟和优化之路,任重道远。。。go python js标准库都成熟且优化有保证。。。