str.match()中匹配的正则分组问题

https://img1.mukewang.com/5be53585000142f505670092.jpg

不加括号进行分组时数组就只有"12324"一项,加了括号为什么变成两个?

梦里花落0921
浏览 1138回答 1
1回答

慕神8447489

match方法的匹配结果为一个数组。这个数组分为4部分,依次为:整个正则表达式匹配的字符串括号匹配的子串,每一对括号对应一个子串index:匹配的第一个字符位置input:输入字符串str = "12324"str.match(/\d+/) [ '12324', index: 0, input: '12324' ]str = "12324"str.match(/(\d+)/) [ '12324', '12324', index: 0, input: '12324' ]str = "123abc"  str.match(/\d+[a-z]+/) [ '1232abc', index: 0, input: '1232abc' ]str = "1232abc"str.match(/(\d+)([a-z]+)/) [ '1232abc', '1232', 'abc', index: 0, input: '1232abc' ]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript