我今天在jQuery source code - 第66行(以及其他一些地方)中使用此正则表达式,我找不到任何相关内容。
// Used for matching numbers
[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)
据我所知((stuff|)
)匹配stuff
或empty string
,我认为它与此相同
[+-]?(?:\d*\.)?\d+(?:[eE][+-]?\d+)?
我在here进行基准测试并且它不稳定(容忍15k)所以..不可靠?
那么这两个正则表达式的交易是什么?一个选择的问题?性能?不同的含义?
答案 0 :(得分:4)
我建议你在理解正则表达式时很难使用debuggex:
[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)
[+-]?(?:\d*\.)?\d+(?:[eE][+-]?\d+)?
结果:他们的意思相同。