我有一个字符串如下 -
"This is <h2>a place/h2>
<p>You know its a good place!</p>
<ul>
<li>Booked your ticket #20130114074912_AN3P703C on Monday, January 14</li>
</ul>"
所以,我希望我的字符串如下
"This is a place
You know its a good place.
Booked your ticket #20130114074912_AN3P703C on Monday, January 14"
答案 0 :(得分:2)
我相信这是你的答案。 link
试试这个:
// <summary>
/// Remove HTML from string with Regex.
/// </summary>
public static string StripTagsRegex(string source)
{
return Regex.Replace(source, "<.*?>", string.Empty);
}
输出:
Input: <p>The <b>dog</b> is <i>cute</i>.</p>
Output: The dog is cute.
答案 1 :(得分:0)
您可以使用以下方法从任何字符串中删除HTML标记
static string StripHTML (string inputString)
{
return Regex.Replace(inputString, "<.*?>", string.Empty);
}
答案 2 :(得分:0)
这可以完成您的工作
String neededString = Regex.Replace(source, "<.*?>", string.Empty);
对于更复杂的字符串,包含CSS,JavaScript节点u可以使用以下
String neededStringRegex.Replace(subjectString, @"<(style|script)[^<>]*>.*?</\1>|</?[a-z][a-z0-9]*[^<>]*>|<!--.*?-->", "")
答案 3 :(得分:0)
下载并引用HTML Agility Pack,然后调用以下内容:
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(input);
string output = htmlDoc.DocumentNode.InnerText;
这仍然不会删除格式错误的/h2>
标记,但它应该处理的HTML比正则表达式要多得多。
答案 4 :(得分:0)
这应该可以解决问题
string input = "This is <h2> a place</h2><p>You know its a good place!</p><ul> <li>Booked your ticket #20130114074912_AN3P703C on Monday, January 14</li></ul>";
input = Regex.Replace(input, "<.*?>", string.Empty);
这将找到“&lt;&gt;”中包含的所有字符串并用“”或空字符串
替换它