我需要一个正则表达式来通过Visual Studion搜索引擎(可能是C#)在HTML元素之间查找文本。
在某种程度上可行的是:
>\s*([\w])+\s*<
但是它必须匹配以下所有“ asdf”:
<element>asdf
<element>asdf.</element>asdf
<element />
asdf asdf
</element>
<element>
asdf!
</element>
它不应找到的是2个标记之间的空白,此示例应与NOTHING匹配:
<element>
<element> </element>
</element>
我特别需要匹配的正则表达式:
我不想包含不带\ w的特殊字符的匹配项。
另一种根本不起作用的方法是:
>\s*((?=[\w]+)(?=[ ?=()!"_]*))\s*<
满足我的需求的正确方法是什么?
非常感谢您!
答案 0 :(得分:1)
您可以在><
之间匹配文本之前先行使用
>(?=[^<]*\w).*?<
(使用“ s”标志,因此点与换行符匹配-或者使用类似[\S\s]*?
而不是.*?
的东西)
前瞻性确保>
和<
之间存在单词字符。然后,匹配并延迟重复任何字符,直到到达<
。