本文介绍了正则表达式,嵌套的分组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
(\d+)(.)(\d+)我知道这样的分组,每一个分组有一个序号\1\2\3,\0是整个匹配
但是如果分组里有分组,又是怎样命名的呢比如(\s([a-z]+)\s)\d+
这里的([a-z]+)是如何命名的,或者说我要如何取得这个分组
解决方案\1 \2用于正则表达式里面的构建,$1 $2用于捕获后,callback里面使用。(没有\0这个东西吧?忘了)可以这样,外围不需要的分组,使用非捕获符号?:,这样$1 $2就是你需要的捕获了。
(?:\s([a-z]+)\s)\d+另外 ([a-z]+) 指捕获由a到z组成的多个字符串,至少有一个字符;同理,捕获到了,就可以在match等方法的返回中可以找到对应的捕获。
更多推荐
正则表达式,嵌套的分组
发布评论