匹配两个特殊符号
示例一
var path = "?221766&type=edit";
var reg = /(?<=(?:\?))[0-9]*(?!=&)/g;
var res = path.match(reg, "")[0];
//output: 221766
分析
注意:?需要转义?:\?
- (?<=(?:\?)) :匹配
?
后面(排除?
) - [0-9]* :数字
- (?!=&) : 从
&
往前查找(&
可不存在)
示例二
var path = ",dfdg}";
var reg = /(?<=,)(\w)+(?=})/g;
var res = path.match(reg, "")[0];
//output: dfdg
分析
- (?<=,) : 匹配
,
后面(排除,
) - (\w)+ : 匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
- (?=}): 从
}
往前查找(}
必须存在)