这应该是一个非常简单的正则表达式问题,但我无法在任何地方找到任何答案.如何制作一个正则表达式,它只匹配2个字符或至少4个字符.这是我目前的做法(忽略正则表达式本身,除此之外):
[A-Za-z0_9_]{2}|[A-Za-z0_9_]{4,}
Run Code Online (Sandbox Code Playgroud)
但是,这种方法花费了两倍的时间(对于400行文件,我的速度大约慢了0.3秒),所以我想知道是否有更好的方法来做到这一点?
Ama*_*dan 18
优化开始,并锚定它.
^[A-Za-z0-9_]{2}(?:|[A-Za-z0-9_]{2,})$
Run Code Online (Sandbox Code Playgroud)
(另外,你确实说要忽略正则表达式本身,但我猜你可能想要0-9,不是0_9)
编辑嗯,我确信我读到你想要匹配线.^$如果你想在线内匹配,也要删除锚点().如果你只匹配整行,锚点会加速你(好吧,前锚^将至少).
| 归档时间: |
|
| 查看次数: |
39016 次 |
| 最近记录: |