Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何剥离除<;之外的所有html标记;br>;用C代码?_C#_Html_Regex - Fatal编程技术网

C# 如何剥离除<;之外的所有html标记;br>;用C代码?

C# 如何剥离除<;之外的所有html标记;br>;用C代码?,c#,html,regex,C#,Html,Regex,我要做的是删除所有html标记,除了标记 我举了一个例子: public string Strip(string text) { return Regex.Replace(text, @”<(.|\n)*?>”, string.Empty); } 公共字符串条(字符串文本) { 返回Regex.Replace(text,@“”,string.Empty); } 但这一个删除了所有 感谢您的帮助。试试这个正则表达式 return Regex.Replace(text, @”

我要做的是删除所有html标记,除了

标记

我举了一个例子:

public string Strip(string text)
{
    return Regex.Replace(text, @”<(.|\n)*?>”, string.Empty);
}
公共字符串条(字符串文本)
{
返回Regex.Replace(text,@“”,string.Empty);
}
但这一个删除了所有

感谢您的帮助。

试试这个正则表达式

return Regex.Replace(text, @”<(?!br[\x20/>])[^<>]+>”, string.Empty);
返回Regex.Replace(text,@“])[^]+>,string.Empty);

但是我认为html解析器可以更好地完成这些任务。

删除除“br”和“p”选项卡之外的任何html标记。用这个

Regex.Replace(strText,@"<(?!br[\x20/>])[^<>]+>", String.Empty);
Regex.Replace(strText,@“])[^]+>,String.Empty);

用于删除字符串中除“br”和“p”选项卡以外的HTML标记的正则表达式。 试试下面的正则表达式

Regex.Replace(strText,@"<(?!br[\x20/>])[^<>]+>", String.Empty);
Regex.Replace(strText,@“])[^]+>,String.Empty);

@speti43你的意思是什么?如果你有一个完整的html文档(带有150个br标记),你想删除所有内容,只需将150*
作为输出?这是一个纯文本字符串,我想保留
标记并删除所有其他html标记。它适用于多行文本框,用户可以更改颜色、重量等。。但我想在渲染时删除它,只留下换行符。不要说“停止使用正则表达式处理html!”!对于这些琐碎的任务,使用正则表达式要比使用全面的XML/HTML解析器好得多。我已经用我的文本尝试了这一点,但它不起作用。“你的HTML


文本包含许多
”它只是生成相同的文本。如果你的字符串是
,这是正确的。“你的HTML


文本包含许多
,因为它保留了所有的
,并删除了其余的html标记,因为你的字符串没有任何其他html标记,所以它会生成相同的文本。我想他也想删除包括文本在内的所有内容。在那种情况下,我的建议没有用。