【发布时间】:2018-02-15 06:29:42
【问题描述】:
在这种情况下,我应该只使用一个正则表达式匹配。
请参阅以下 HTML 代码:
<html>
<body>
<p>This is some <strong>strong</strong> text</p>
</body>
</html>
我想做一个可以返回This is some strong text 的正则表达式。在这种情况下,<p> 标记内的文本。
总体来说应该:
- 仅匹配两个 HTML 标记之间的文本。
- 排除两个标签内的 HTML 标签,但保留这些标签内的文本。
目前我知道:
-
<p>(.*)<\/p>将匹配从<p>到</p>的区域 -
<[^>]*>将匹配任何 HTML 标签
对我来说困难的部分是如何将两者结合起来(也许有更好的方法)。 你会怎么写这样的正则表达式?
【问题讨论】:
-
认真研究
HtmlAgilityPack(免费,可通过 Nuget 获得)——它会让你变得更快乐! -
也许像 HtmlAgilityPack (nuget.org/packages/HtmlAgilityPack) 这样的东西会更适合您的需求。
-
这是我学校的一项练习任务。
-
教正则表达式的例子真是太糟糕了。 stackoverflow.com/questions/1732348/…
-
作为老师的例子,添加一个
<br/>,一个<img src="smiley.gif" alt="Smiley face <_< and >_< and >_> <3<3" height="42" width="42">。让我们看看他的解决方案是如何解析的。