html - 可变顺序正则表达式语法

标签 html regex html-parsing

有没有办法表明两个或多个正则表达式短语可以以任何顺序出现?例如,XML 属性可以按任何顺序编写。假设我有以下 XML:

<a href="home.php" class="link" title="Home">Home</a>
<a href="home.php" title="Home" class="link">Home</a>

我将如何编写匹配来检查类和标题并适用于这两种情况?我主要是在寻找允许我按任何顺序检查的语法,而不仅仅是像我那样匹配类和标题。除了包含这两种组合并用“|”连接它们之外,还有什么办法吗?

编辑:我更喜欢在单个正则表达式中执行此操作,因为我正在以编程方式构建它并对其进行单元测试。

最佳答案

不,我相信用单个 RE 做到这一点的最佳方法与您描述的完全一样。不幸的是,当您的 XML 可以有 5 个不同的属性时,它会变得非常困惑,给您大量 不同的 RE 来检查。

另一方面,我根本不会用 RE 来做这件事,因为它们不是编程语言。使用 XML 处理库的老式方法有什么问题?

如果您被要求使用 RE,这个答案可能不会有太大帮助,但我相信使用正确的工具来完成这项工作。

关于html - 可变顺序正则表达式语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/699708/

相关文章:

javascript - 压缩和编译 JS 和 CSS

javascript - 拖动 html 表格单元格

html - 错误 :Failed to execute 'atob' on 'Window' : The string to be decoded is not correctly encoded

python - 正则表达式 - 使用 * 和一组字符

regex - 验证 jabber id 的正则表达式是什么?

html - 如何设置 Facebook 分享按钮的样式

regex - 不带空格的字母数字、连字符和下划线的正则表达式

sed - 使用 sed 或 grep 从具有特定 id 的 html 标签之间提取文本

python - HTML 解析,lxml、python、.tail 被 <br> 标签分解

python - 使用python从html元标记中确定字符集