如何为span属性创建正则表达式
发布网友
发布时间:2022-09-17 02:43
我来回答
共1个回答
热心网友
时间:2023-10-14 18:22
<span(\s+[^="']+=(['"]).*?\2)*\s*>
第一层逻辑
<span(...)*\s*> 为span有0个或多个属性, 属性末尾可能有空格
第二层逻辑: 匹配属性
\s+[^="']+=... 一个或多个空格开始, 非等号引号的字符为属性名, 然后是等号和属性值
第三层逻辑: 匹配属性值
(['"]).*?\2 单引号或双引号开始, 结尾的引号必须和开头是一样,\2引用了第二个括号匹配的字符串,这里就是开头的引号. 中间任意字符串,但尽量短的匹配,避免跨多个属性配对引号