老师 不明白
来源:4-4 匹配HTML标签
anan_123
2019-12-27 15:06:59
/<(?:[^"'>]|(["'])[^"']*\1)*>/g;
老师 为什么[^"']是匹配的“ ”或者‘‘之间的内容
[^"'>]又是匹配的“ ”或者’‘或者>之外的内容呢
2回答
好帮手慕慕子
2019-12-27
同学你好, 对于你的问题解答如下:
["']表示匹配一个双引号或者单引号
[^"']表示匹配单引号和双引号之外的内容,即匹配非双引号或者单引号的内容,这样就可以匹配单引号或者双引号里面的内容
*的意思是匹配前面的子表达式零次或多次, 等价于{0,}。
\1是引用第一个分组,即前面用小括号包裹的内容。所以后面又匹配一个双引号或者单引号。
(["'])[^"']*\1就是匹配了一对双引号或者单引号以及它里面的内容。
这块确实比较绕,建议同学多听几遍,多动手练习。
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
好帮手慕慕子
2019-12-27
同学你好, 这个是js语法规定的规定的,我们需要记住用法。
["']表示匹配"或者'字符。
添加符号^后, [^"'>]表示取反,也就说匹配"、'及>之外的任意一个字符。
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
相似问题