例子
const temp = "<div style=\"width: 20px; height: 20px;\" align=\"left\">***</div>"
目标
标签的属性组成是
- 属性名 = 属性值(包含有引号没引号的)
- 属性名不包含=(等于号)
- 属性名和等于号之间允许存在多个空格,等于号和属性值之间允许存在多个空格
- 属性值只能是0个或者1个
组成
const reg = /\s*[^=\s+]+\s*=\s*([^=>]+)?(?=(\s+|>))/g
- \s* 表示匹配的前边是若干空白字符
- [^=\s+]+\s*= 表示匹配的属性名+若干空白字符+等号
- \s*([^=>]+)? 表示匹配的属性值,且是非贪婪的
- (?=(\s+|>)) 是正向预查,表示匹配的后边必须是若干空白字符或者右箭头符
使用
console.log(temp.replace(reg,""));