@
fuxkcsdn Hi,你点每个正则的链接,进去之后看最下面的匹配项即可。
你这个正则我看了,也测试了一下,我这个要快 30%左右。
➜ Code sh
run-benchmark.shRun the first round of testing.
2815.1209354401 - 9383624
3864.3181324005 - 7653307
Run the second round of testing.
2795.1259613037 - 9383624
3878.3061504364 - 7653307
Run the third round of testing.
2758.6340904236 - 9383624
3866.0190105438 - 7653307
Done.
主要原因我在兼顾方便的同时我还是尽量做了优化的。这里就不细讲了。那个正则里面有很多可以优化项,例如尽量减少分支条件,左侧优先,起始结尾描点优化等等。举个最简单的例子,他那个里面是 13、14、15 等等这样排序匹配的,我这里面 14、16 等使用频率低的号段我都放到最后面去了,这样能减少不必要的运算。
https://drive.google.com/file/d/1RkkRb7TSLYTdXoQaJmT8IVaRM-6UaPB1/view?usp=sharing 这是我刚才做的简单对比测试,包含 1000 万随机生成的手机号码。