AS3 js正则表达式 反向引用(backreference)
as3代码:
varstr=""; varreg=/(\d{})\/gx; //\即为反向分组,代表前一个分组相同的匹配结果字符。如\d{}匹配了,那么\也只能为匹配, varfirst=str.match(reg); //match(),返回一个对象,如果reg有全局属性g,对象的数字索引为各完全匹配字符, //如果无全局属性g,索引为第一次完全匹配字符,其他索引依次为各分组匹配字符 for(varkeyinfirst) { trace("第一次属性名:"+key+",值:"+first[key]) } /* 输出 第一次属性名:,值: 第一次属性名:,值: */
js代码
<scriptlanguage="javascript"> varstr=""; varreg=/(\d{})\/gx; //\即为反向分组,代表前一个分组相同的匹配结果字符。如\d{}匹配了,那么\也只能为匹配, varfirst=str.match(reg); //match(),返回一个对象,如果reg有全局属性g,对象的数字索引为各完全匹配字符, //如果无全局属性g,索引为第一次完全匹配字符,其他索引依次为各分组匹配字符 for(varkeyinfirst) { document.write("第一次属性名:"+key+",值:"+first[key]) } </script> <!-- 输出. 第一次属性名:,值: 第一次属性名:,值: -->
更复杂一些的反向引用:
下面是一个简单的关键字搜索高亮显示的正则表达用法。。
AS3
varstr=""; varreg=/(\d{})\/gx; varfirst=str.replace(reg,"<fontcolor=red>$$</font>"); //输出<fontcolor=red>$</font><fontcolor=red>$</font>。 //replace()作用是把匹配字符串替换成相应字段。 //注意$反向代表reg第一个括号内的分组\d{},而$直接被显示了,表示正则表达式只认括号为分组,不把/识别为第二个分组 trace(first);
JS
<scriptlanguage="javascript"> varstr=""; varreg=/(\d{})\/gx; varfirst=str.replace(reg,"<fontcolor=red>$$</font>"); //输出<fontcolor=red>$</font><fontcolor=red>$</font>。 //replace()作用是把匹配字符串替换成相应字段。 //注意$反向代表reg第一个括号内的分组\d{},而$直接被显示了,表示正则表达式只认括号为分组,不把/识别为第二个分组 document.write(first); </script>
以上内容是小编给大家介绍的AS3js正则表达式反向引用(backreference),希望对大家有所帮助!