【问题标题】:Eliminate html tags from values从值中消除 html 标签
【发布时间】:2009-05-26 09:28:27
【问题描述】:

我正在尝试从 ssrs 报告中显示的值中删除 HTML 标记。

我的解决方案是: =(new System.Text.RegularExpressions.Regex("]*>")).Replace((new System.Text.RegularExpressions.Regex(".*")).Replace (Fields!activitypointer1_description.Value,""),"")

问题是应该首先执行的第二个表达式(“. *” 没有空格)没有做任何事情。结果包含来自 html 的样式,没有附加标签。

我没有想法。

C

【问题讨论】:

  • 第二个正则表达式是干什么用的?
  • 发布一个最清楚的例子来说明你在寻找什么。
  • 第二个表达式没有先执行。是什么让您认为它首先执行?
  • 是什么让我这么想?想到的第一件事是语言。我的意思是,如果我获取代码并在 C# 程序中执行它,它会做它应该做的事情。是什么让您认为它执行第二?
  • 哎呀,我的错。没错,STYLE 正则表达式确实在 HTML 之前执行。

标签: reporting-services reportingservices-2005


【解决方案1】:

您需要添加 RegexOptions.Singleline,因为默认情况下,正则表达式将在换行符处停止。下面是一个控制台程序示例,您可以运行它来验证它:

string decription = @"<b>this is some 
text</b><style>and 
this is style</style>";
        Console.WriteLine(
            (new Regex( "<[^>]*>", RegexOptions.IgnoreCase | RegexOptions.Singleline ))
            .Replace(
                (new Regex( "<STYLE>.*</STYLE>", RegexOptions.IgnoreCase | RegexOptions.Singleline ))
                    .Replace( decription
                    , "" )
            , "" )
         );

【讨论】:

  • 单线选项是 10 倍的东西
猜你喜欢
  • 1970-01-01
  • 2022-01-19
  • 2013-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-05
相关资源
最近更新 更多