0
为什么JavaScript的正则表达式JavaScript正则表达式/ E * /导致空匹配
/e*/
不能匹配字符串“hello”的任何部分?
我已经尝试以下
"hello".match(/e*/) //return [""]
而/e+/
可以匹配
"hello".match(/e+/) //return ["e"]
我俯瞰任何简单的东西????
为什么JavaScript的正则表达式JavaScript正则表达式/ E * /导致空匹配
/e*/
不能匹配字符串“hello”的任何部分?
我已经尝试以下
"hello".match(/e*/) //return [""]
而/e+/
可以匹配
"hello".match(/e+/) //return ["e"]
我俯瞰任何简单的东西????
它匹配了,否则你会得到null
作为结果。
该匹配在字符串的开始处是零字符。你的断言是“在零个或多个e
的字符串中找到一个位置”:在hello
的开始位置,e
有零个或多个,所以我们不需要进一步搜索。 match
预计返回[""]
(匹配的零字符)。
另一方面,/e+/
想要一个或更多e
字符;这在字符串的开始处并不满意,但它在下一个位置处满意,并且您获得["e"]
。