由于某些原因,这两个正则表达式的行为相同:
"43\\gf..--.65".replace(/[^\d.-]/g, ""); // 43..--.65
"43\\gf..--.65".replace(/[^\d\.-]/g, ""); // 43..--.65
Demo
在第一个正则表达式中,我不会转义点(
.
),而在第二个正则表达式中,我会转义(\.
)。有什么区别,为什么它们表现相同?
最佳答案
因为该点在字符类内部(方括号[]
)。
看一看http://www.regular-expressions.info/reference.html,它说(在char class部分下):
关于javascript - 正则表达式范围内的转义点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10397968/