相关疑难解决方法(0)

用于提取标记属性的正则表达式

我正在尝试提取锚标记(<a>)的属性.到目前为止,我有这样的表达:

(?<name>\b\w+\b)\s*=\s*("(?<value>[^"]*)"|'(?<value>[^']*)'|(?<value>[^"'<> \s]+)\s*)+
Run Code Online (Sandbox Code Playgroud)

适用于字符串之类的

<a href="test.html" class="xyz">
Run Code Online (Sandbox Code Playgroud)

和(单引号)

<a href='test.html' class="xyz">
Run Code Online (Sandbox Code Playgroud)

但不是没有引号的字符串:

<a href=test.html class=xyz>
Run Code Online (Sandbox Code Playgroud)

如何修改我的正则表达式使其适用于没有引号的属性?或者有更好的方法吗?

谢谢!

更新: 感谢您提供的所有好评和建议.有一件事我没有提到:遗憾的是我必须修补/修改我自己编写的代码.没有时间/金钱可以自下而上重写这些东西.

html regex

47
推荐指数
8
解决办法
9万
查看次数

从html标记中删除所有属性

我有这个HTML代码:

<p style="padding:0px;">
<strong style="padding:0;margin:0;">hello</strong>
</p>
Run Code Online (Sandbox Code Playgroud)

但它应该成为(对于所有可能的html标签):

<p>
<strong>hello</strong>
</p>
Run Code Online (Sandbox Code Playgroud)

php

43
推荐指数
3
解决办法
7万
查看次数

标签 统计

html ×1

php ×1

regex ×1