(exp) 匹配exp,并捕获文本到自动命名的组里
(?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)
(?:exp) 匹配exp,不捕获匹配的文本,也不给此分组分配组号 (exp)与(?:exp)区别在哪里?捕获匹配的文本(什么意思?)给此分组分配组号(什么意思?)自动命名的组里是什么意思?(?#comment) 这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读
依然不理解。能不能用实例代码讲解一下?
(?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)
(?:exp) 匹配exp,不捕获匹配的文本,也不给此分组分配组号 (exp)与(?:exp)区别在哪里?捕获匹配的文本(什么意思?)给此分组分配组号(什么意思?)自动命名的组里是什么意思?(?#comment) 这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读
依然不理解。能不能用实例代码讲解一下?
2、给此分组分配组号的意思——如果你的正则表达式中有多个括号括起来的,则生成出来的匹配子字符串是个数组,这样就有组号。
3、自动命名的组——就是匹配出来的子字符串的组号,从1开始:1,2,3...
4、关于正则表达式如何操作获取匹配出来的子字符串,你看下面的JS代码:var s1 = "{'item_get_response':{'item':{'props':'20418023:157305307;1632501:269068813'}}}";
var p1 = /\{'props':(.*?')\}/;
function chkRegpt(str, pattn){
//根据正则表达式提取内容
var rst = str.match(pattn);
if(rst != null){
return rst[1];
}else{
return "...";
}
}
var tt = chkRegpt(s1,p1);
alert(tt);,输出结果:'20418023:157305307;1632501:269068813'
和
var number = /(\d)+/g;有什么区别
http://blog.csdn.net/lxcnn/article/details/4304754