正则表达式,嵌套的分组
本文介绍了正则表达式,嵌套的分组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
(\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等方法的返回中可以找到对应的捕获。
这篇关于正则表达式,嵌套的分组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文