爲什麼下面的代碼爲:爲什麼「ab」.match(/ ab /)返回[「ab」,「ab」]?
「ab」.match(/(ab)/);
回報這樣的:
[ 「AB」, 「AB」]
雖然ab
一旦串ab
,爲什麼ab
陣列中出現兩次的出現?
爲什麼下面的代碼爲:爲什麼「ab」.match(/ ab /)返回[「ab」,「ab」]?
「ab」.match(/(ab)/);
回報這樣的:
[ 「AB」, 「AB」]
雖然ab
一旦串ab
,爲什麼ab
陣列中出現兩次的出現?
第一個元素包含整個匹配的字符串,而下一個元素包含組匹配。試想一下:
> "somestring44".match(/[a-z]([a-z]*)/)
["somestring", "omestring"]
該文檔在這裏:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match#Return_value – Leo
* Repetitio est mater studiorum *。 http://stackoverflow.com/a/9002845/3832970似乎解釋了這一切好得多。 –
你有沒有看任何[DOCO爲'.match()'](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/match) ?嘗試一下沒有括號,看看你得到什麼。 – nnnnnn