正则表达式的问题

来源:4-4 匹配HTML标签

CoffeePlayer

2021-01-27 14:56:13

	var str = '<input type="text" value=">" name="username" />';


var pattern = /<\/?[a-zA-Z]+(?:\s+[a-zA-Z]+=".*")*>/g

console.log(str.match(pattern));

http://img.mukewang.com/climg/60110dbe0900f80f13780186.jpg


为什么结果<input type="text" value=">

而不是<input type="text" value=">" name="username" >

写回答

1回答

好帮手慕夭夭

2021-01-27

同学你好,这是因为正则没有匹配最后的斜杠,如下修改:

标签的前面没有斜杠,所以前面匹配斜杠没有用,去掉;而后面有空格和斜杠,需要匹配

http://img.mukewang.com/climg/6011205909c00baf07180132.jpg

祝学习愉快~

0

0 学习 · 14456 问题

查看课程