1个回答
展开全部
\\D是匹配一个非数字,\\D*是匹配0个或多个非数字,尽可能多,(\\D*)是将匹配到的所有非数字捕获到分组1以供需要时访问。
\\d是匹配一个数字,\\d+是匹配1个或多戚烂慎个数字,尽可能多,(\\d+)是将匹配到的所有数字捕获到分组2以供需要时访问。
.是匹配任意一个字符,.*是匹配0个或多个任意字符,尽可能多,(.*)是将匹配到的多个任意字符捕获到分组3以供需要时高敬访问。
m.group(下标)是访历饥问上面捕获到的分组,下标0对应整个捕获,下标1对应捕获到的分组1,下标2对应捕获到的分组2,以此类推。
所以,m.group(0)就是整个字符串,m.group(1)就是3000前面的所有字符,m.group(2)就是3000,m.group(3)就是3000后面的所有字符。
\\d是匹配一个数字,\\d+是匹配1个或多戚烂慎个数字,尽可能多,(\\d+)是将匹配到的所有数字捕获到分组2以供需要时访问。
.是匹配任意一个字符,.*是匹配0个或多个任意字符,尽可能多,(.*)是将匹配到的多个任意字符捕获到分组3以供需要时高敬访问。
m.group(下标)是访历饥问上面捕获到的分组,下标0对应整个捕获,下标1对应捕获到的分组1,下标2对应捕获到的分组2,以此类推。
所以,m.group(0)就是整个字符串,m.group(1)就是3000前面的所有字符,m.group(2)就是3000,m.group(3)就是3000后面的所有字符。
更多追问追答
追问
那个,字符不也是非数字吗,为什么不放在分组1?为什么分组1和分组3不可以互换呢
追答
分组按括号从左往右、从外往里(当括号嵌套时)计算。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询