<script src="js/jquery-1.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
var p = jQuery.parse;
for ( var i = 0; i < p.length; i++ ) {
var re = new RegExp( "^" + p[i][0]
// Look for a string-like sequence
.replace( 'S', "([a-z*_-][a-z0-9_-]*)" )
// Look for something (optionally) enclosed with quotes
.replace( 'Q', " *'?\"?([^'\"]*?)'?\"? *" ), "i" )
console.log(re)
}
</script>
re的结果
/^\[ *(@)([a-z*_-][a-z0-9_-]*) *([!*$^=]*) * *'?"?([^'"]*?)'?"? *\]/i
/^(\[) *'?"?([^'"]*?)'?"? *\]/i
/^(:)([a-z*_-][a-z0-9_-]*)\( *'?"?([^'"]*?)'?"? *\)/i
/^([:.#]*)([a-z*_-][a-z0-9_-]*)/i
主要问题 [a-z*]这个*是什么意思 怎么理解
n*匹配任何包含零个或多个 n 的字符串。[a-z] 查找任何从小写 a 到小写 z 的字符。 结合起来就是匹配从小写 a 到小写 z 的n个字符
https://www.w3school.com.cn/jsref/jsref_obj_regexp.asp
哦 问题解决了号在[]中没有特殊含义就是号不代表数量 就代表一个字符 任意字符到了方括号中一般都是代表字符串没特殊含义