【发布时间】:2018-11-01 09:21:09
【问题描述】:
这里已经多次询问了这个版本,使用这些版本我能够得到两个不同的正则表达式。
剥离所有 HTML
1. <[^>]*>
除了锚标签之外的所有内容
2. <a[^>]*>([^<]+)<\/a>
我没有希望将这些组合起来得到一个剥离所有 HTML 但保持锚点不变的正则表达式 (1+!2)。因此,我目前正在使用第一个正则表达式遍历我的 HTML,如果遇到通常位于锚点内的某个关键字,那么我会使用第二个正则表达式遍历 Body 并将两者结合起来。
这显然不理想,很可能会错过很多锚。
匹配所有 HTML 但锚点的单个正则表达式会是什么样子? /1?!2/
测试数据:https://www.regextester.com/?fam=105725 我需要所有大写字母及其周围的锚。
【问题讨论】:
-
我没有看到任何问号?有些表达式可能会这样做,但请同时提供您的工具/编程语言。
-
有关支持
(*SKIP)(*FAIL)的引擎,请参阅 regex101.com/r/ISrz6O/1,但请注意嵌套结构容易出错(例如HTML)。 -
@Jan 假设正则表达式在任何地方都是一样的,我的错。这个对我来说失败了,因为“量词 {x,y} 什么都没有。”但谢谢会调查它。
-
]*>([^ 怎么样?
-
令人惊讶的是,没有人大喊“不要用 RegEx 解析 HTML!” ;) This question almost always comes up