正则表达式有一个常用功能,甚至可以说是比匹配更加重要的功能 —— 捕获(后向引用)。
所谓捕获,就是从正则表达式的匹配部分中提取其中的某部分。通过 “ $ 数字 ” 这种形式的变量,就可以获取匹配了正则表达式中的用 () 括住的部分的字符
串。
这里主要讲一下嵌套的关系——从外到里,先左后右。
嵌套捕获:
/((\d)?(\d)人)?((\d)?百)?((\d)?十)?(\d)?$/
这里面括号一共有8个,$1-$8分别代表什么呢?
$1是第这个红色的括号里面的内容 ((\d)?(\d))人
$2是$1里面的从左起第一个, ((\d)?(\d))。即紫色的部分
$3是$1里面的从左起第二个。
$4是括住 ((\d)?百) 的括号。
$5是 ((\d)?百) 里面紫色的括号。
以此类推