码迷,mamicode.com
首页 > Web开发 > 详细

jQuery中的quickExpr

时间:2015-08-08 13:26:04      阅读:339      评论:0      收藏:0      [点我收藏+]

标签:

jQuery 源码中的 quickExpr 是用来检测参数 selector 是否是复杂的 HTML 代码(如“abc<div>”)或 #id,匹配结果存放在数组 match 中

1 // A simple way to check for HTML strings or ID strings
2 // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
3 quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/;

quickExpr = /^(?:pattern)/; //

          pattern = p1|p2;

                p1 = [^#<]*(<[\w\W]+>)[^>]*$;

                p2 = #([\w\-]*)$; 

1、(?:pattern):表示匹配 pattern 但是不记住匹配项

2、p1:匹配复杂的 HTML

3、p2:匹配 #id

var quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/;
ss="aa<dd>#dd</cc>ff";
match=quickExpr.exec(ss);

//["aa<dd>#dd</cc>ff", "<dd>#dd</cc>", undefined, index: 0, input: "aa<dd>#dd</cc>ff"]
console.log(match);

//[‘#target‘, undefined, ‘target‘]
quickExpr.exec( ‘#target‘ );

 

jQuery中的quickExpr

标签:

原文地址:http://www.cnblogs.com/kuangliu/p/4712858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!