2008-08-29 7 views
9

mon SSRS DataSet renvoie un champ HTML, par ex.Suppression du code HTML de la chaîne dans SSRS 2005 (VB.NET)

<b>blah blah </b><i> blah </i>. 

Comment supprimer toutes les balises HTML? doit être fait avec inline VB.NET

La modification des données de la table n'est pas une option.

Solution trouvée ... = System.Text.RegularExpressions.Regex.Replace (StringWithHTMLtoStrip, "< [^>] +>", "")

Répondre

1

Si vous savez que le HTML est suffisamment formaté, vous pouvez, si vous vous assurez qu'il a un nœud racine, convertir les données de ce champ en un fichier System.Xml.XmlDocument et récupérer la valeur InnerText. Encore une fois, vous devrez vous assurer que le texte a un nœud racine, que vous pouvez ajouter vous-même si nécessaire, car cela n'aura pas d'importance, et assurez-vous que le HTML est bien formé.

0

Je voudrais aller au rapport Propriétés, puis le code et ajoutez le

suivant
Dim mRemoveTagRegex AS NEW System.Text.RegularExpressions.Regex("<(.|\n)+?>", System.Text.RegularExpressions.RegexOptions.Compiled) 

Function RemoveHtml(ByVal text As string) AS string 
    If text IsNot Nothing Then 
    Return mRemoveTagRegex.Replace(text, "") 
    End If 
End Function 

Ensuite, vous pouvez utiliser Code.RemoveHtml(Fields!Content.Value) pour enlever les balises html. À mon avis, il est préférable d'avoir plusieurs copies de l'expression régulière.

Questions connexes