哪些符号是需要转义字符表示的了,邮箱中的@(Email:^w+@[a-z0-9]+(.[a-z]+){1,3}$)为什么不用转义?
网址:[a-zA-z]+://1*中的:/也不需要吗?
在var re = new RegExp('\b'+sClass+'\b');却会被自动转义需要多写一个?
- s ↩
哪些符号是需要转义字符表示的了,邮箱中的@(Email:^w+@[a-z0-9]+(.[a-z]+){1,3}$)为什么不用转义?
网址:[a-zA-z]+://1*中的:/也不需要吗?
在var re = new RegExp('\b'+sClass+'\b');却会被自动转义需要多写一个?
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
3 回答1.3k 阅读✓ 已解决
首先,为什么需要转义?
还不是因为这些字符有别的意思,不转义表示的话,跟我们想的结果会不一样。
那么那些字符在正则表达式中有别的意思呢?
举几个例子:
反斜杠
\
就要转义,因为不转义,系统还以为你想转义下一个字符呢。星号
*
也需要转义,因为系统会以为你想匹配任意字符。类似的:加号
+
,括号()
都需要转义。