2012-01-05 18 views
6

साथ पार्स करने व्हाइटस्पेस और नई-पंक्तियों निकालें मैं निम्नलिखित तरीके से HtmlAgilityPack के साथ HTML पार्स करने की कोशिश की:जब HtmlAgilityPack

HtmlDocument htmlDoc = new HtmlDocument(); 
htmlDoc.LoadHtml(xhtmlString); 

दुर्भाग्य xhtmlString अनावश्यक व्हाइटस्पेस और न्यू लाइन वर्ण हैं, तो htmldoc की _text अब इस तरह दिखता है :

<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\t<head></head>\n\t<body>\n\n<p>Alle Auktionen<br /></p>\n\n\t</body>\n</html>

यह है जब शरीर के बच्चे तत्वों के साथ काम कर रहे मेरे लिए एक समस्या है।

इन अनावश्यक पात्रों को हटाने का सबसे आसान तरीका क्या है?

क्या HTMLAgilityPack न्यूलाइन और टैब से HTML को साफ करने के लिए किसी प्रकार का फ़ंक्शन पेश करता है?

+0

वहाँ एक रास्ता तो आप इस को हल करने के String.Replace इस्तेमाल कर सकते हैं है? –

उत्तर

1

यह दस्तावेज़ इंडेंटेशन है और अनावश्यक सफेद जगहों और न्यूलाइन वर्ण नहीं है।
मैं नहीं देख सकता कि यह एक समस्या कैसे हो सकती है लेकिन क्या आप केवल विशेषताओं जैसे "\ t", "\ n" को प्रतिस्थापित नहीं कर सकते?

एक तेजी से खोज हो सकता है कि गलत पर कुछ गुण की स्थापना मैं इस Html Agility Pack: make code look neat
पाया करने से सहायक हो सकता है

+0

मैं मैन्युअल रूप से विशेष वर्णों को प्रतिस्थापित कर सकता हूं, लेकिन मैं HTML को निकालने के बजाय (इरादा आदि के बिना) निकालना चाहता हूं। उदाहरण के लिए यदि न्यूलाइन वर्ण अलग-अलग एन्कोड किए गए हैं क्योंकि एचटीएमएल इनपुट करने वाले उपयोगकर्ता के पास एक और ओएस है, तो मैं परेशानी में पड़ सकता हूं। – magnattic

+0

। जगह (पर्यावरण। न्यूलाइन, टेक्स्ट); यूनिक्स और गैर-यूनिक्स प्लेटफ़ॉर्म के लिए काम कर सकते हैं लेकिन "\ t" –

+0

@matheusrufca के बारे में नहीं जानते - एटिका की नई लाइनों के बारे में चिंता मान्य है। वह अपने कोड क्रॉस प्लेटफ़ॉर्म को चलाने में कोई समस्या नहीं होने के बारे में बात नहीं कर रहा है, उसकी चिंता किसी अन्य प्लेटफार्म द्वारा उत्पन्न एचटीएमएल में हेरफेर करने के बारे में है। –