2009-05-26 13 views
0

Ich versuche, HTML-Tags von einem Wert zu entfernen, der in einem ssrs-Bericht angezeigt wird.Eliminieren Sie HTML-Tags aus den Werten

Meine Lösung kam: = (neu System.Text.RegularExpressions.Regex (“< [^>] *> ")) Ersetzen ((neu System.Text.RegularExpressions.Regex (" < STYLE>.. * </STYLE> ")). Ersetzen (Fields! activitypointer1_description.Value," ")," ")

das Problem ist, dass der zweite Ausdruck (" < STYLE>. * </STYLE>“ohne Leerzeichen) was zuerst ausgeführt werden sollte, tut nichts. Das Ergebnis enthält die Stile aus dem HTML ohne angehängte Tags.

Ich habe keine Ideen mehr.

C

+0

Für was ist der zweite Regex? – Benjol

+0

Geben Sie ein klares Beispiel dafür, wonach Sie suchen. –

+0

Der zweite Ausdruck wird nicht zuerst ausgeführt. Was hat Sie dazu gebracht zu denken, dass es zuerst ausgeführt wird? – DonkeyMaster

Antwort

0

Sie müssen RegexOptions.Singleline hinzuzufügen, da standardmäßig Reguläre Ausdrücke auf Zeilenumbrüche zu stoppen. Hier ist ein Beispiel für ein Konsolenprogramm, das Sie ausführen können, um es zu überprüfen:

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 
        , "") 
      , "") 
     ); 
+0

die SingleLine Option war das Ding 10x – Cosmin

Verwandte Themen