删除字符串中两个字符之间的所有内容
本文关键字:之间 字符 两个 字符串 删除 | 更新日期: 2023-09-27 18:22:13
我从网页中提取了一些数据,我想知道如何删除这些字符之间的所有内容-<和>,同时也删除这些字符本身。下面是一个字符串的例子,我从一个网站得到-
<a>SomeTextHere</a>Moretext<br><tr>SomeText</tr>
我希望我的最终结果是
SomeTextHere MoreText SomeText
有没有一种方法可以让我快速有效地做到这一点?
您可以使用这个简单的RegEx。
private string StripTagsRegex(string source)
{
return Regex.Replace(source, "<.*?>", string.Empty);
}
对于更复杂的工作,请使用Html敏捷包,这是一种通常推荐使用的工具。它将采用格式错误的HTML,并将其转换为XHTML,然后是像XML类一样的可遍历DOM。
您想要的似乎是用一个空格替换多个连续的html标签,而基于代码的答案只是将标签两侧的内容连接起来
以下内容将剥离实际标签和html注释,同时保留其他所有内容(包括不构成标签声明一部分的<和>字符)。
private string StripTagsRegex(string source)
{
return Regex.Replace(source, "(</?[a-z][a-z0-9]*[^<>]*>|<!--.*?-->)+", " ", RegexOptions.IgnoreCase | RegexOptions.Singleline | RegexOptions.Multiline).Trim();
}
使用这种方法:
<a>SomeTextHere</a>Moretext<br><tr>SomeText</tr>
成为
SomeTextHere MoreText SomeText
我想这正是你真正想要的。