javascript正则表达式/e*/导致空匹配
为什么使用javascript正则表达式javascript正则表达式/e*/导致空匹配,javascript,regex,Javascript,Regex,为什么使用javascript正则表达式 /e*/ 无法匹配字符串“hello”的任何部分 我已经尝试了以下方法 "hello".match(/e*/) //return [""] 而/e+/可以匹配 "hello".match(/e+/) //return ["e"] 我是否忽略了任何简单的东西???它匹配,或者你会因此得到null 匹配的字符串开头为零个字符。您的断言是“在字符串中查找一个位置,其中有零个或多个e”:在hello的开头,有零个或多个e,因此我们不需要进
/e*/
无法匹配字符串“hello”的任何部分
我已经尝试了以下方法
"hello".match(/e*/) //return [""]
而/e+/
可以匹配
"hello".match(/e+/) //return ["e"]
我是否忽略了任何简单的东西???它匹配,或者你会因此得到
null
匹配的字符串开头为零个字符。您的断言是“在字符串中查找一个位置,其中有零个或多个e
”:在hello
的开头,有零个或多个e
,因此我们不需要进一步搜索match
预期返回[“”]
(匹配的零个字符)
另一方面,
/e+/
需要一个或多个e
字符;这在字符串的开头是不满足的,但在下一个位置是满足的,您将得到它匹配的[“e”]
,否则您将得到null
匹配的字符串开头为零个字符。您的断言是“在字符串中查找一个位置,其中有零个或多个e
”:在hello
的开头,有零个或多个e
,因此我们不需要进一步搜索match
预期返回[“”]
(匹配的零个字符)
另一方面,/e+/
需要一个或多个e
字符;这在字符串的开头不满足,但在下一个位置满足,您会得到[“e”]