2010-01-24 1 views
0

У меня есть БД с некоторыми текстовыми полями, вставленными из MS Word, и мне сложно снять только теги и теги, но, очевидно, сохраняя их innerText.Сбрасывание текстовых меток MS Word с использованием пакета гибкости html

Я попытался с помощью ГАП, но я не буду в правильном направлении ..

Public Function StripHtml(ByVal html As String, ByVal allowHarmlessTags As Boolean) As String 
    Dim htmlDoc As New HtmlDocument() 
    htmlDoc.LoadHtml(html) 
    Dim invalidNodes As HtmlNodeCollection = htmlDoc.DocumentNode.SelectNodes("//div|//font|//span") 
    For Each node In invalidNodes 
     node.ParentNode.RemoveChild(node, False) 
    Next 
    Return htmlDoc.DocumentNode.WriteTo() 
End Function 

Этот код просто выбирает нужные элементы и удаляет их ... но не держать их внутренний текст. .

заранее спасибо

ответ

1

Ну ... Я думаю, я нашел решение:

Public Function StripHtml(ByVal html As String) As String 
    Dim htmlDoc As New HtmlDocument() 
    htmlDoc.LoadHtml(html) 
    Dim invalidNodes As HtmlNodeCollection = htmlDoc.DocumentNode.SelectNodes("//div|//font|//span|//p") 
    For Each node In invalidNodes 
     node.ParentNode.RemoveChild(node, True) 
    Next 
    Return htmlDoc.DocumentNode.WriteContentTo 
End Function 

Я был почти там ...: P