Jsoup के HTML से सादे पाठ रूपांतरण के साथ लाइन ब्रेक को संरक्षित करना
Jsoup HTML में हेरफेर करने के लिए मजबूत उपकरण प्रदान करता है, लेकिन HTML से सादे में इसका डिफ़ॉल्ट रूपांतरण टेक्स्ट लाइन ब्रेक को मर्ज कर सकता है, उन्हें निरंतर टेक्स्ट के रूप में प्रस्तुत कर सकता है। इन ब्रेक को संरक्षित करने के लिए, यहां बताया गया है कि आप Jsoup का उपयोग कैसे कर सकते हैं:
लाइन ब्रेक संरक्षण के लिए एक कस्टम फ़ंक्शन:
प्रदान किया गया जावा कोड स्निपेट एक कस्टम फ़ंक्शन, noTags पेश करता है, जो Jsoup के टेक्स्ट का लाभ उठाता है() इनपुट HTML से HTML टैग हटाने की विधि। हालाँकि, यह लाइन ब्रेक को बनाए नहीं रखता है। इस पद्धति का उपयोग करके, noTags फ़ंक्शन को बेहतर बनाया जा सकता है:
सार्वजनिक स्ट्रिंग noTags(स्ट्रिंग str) { वापसी Jsoup.parse(str).wheleText(); }लाइन ब्रेक संरक्षण को लागू करना:public String noTags(String str) {
return Jsoup.parse(str).wholeText();
}
सार्वजनिक स्थैतिक स्ट्रिंग br2nl(स्ट्रिंग html) {
अगर (एचटीएमएल == शून्य)
एचटीएमएल वापस करें;
दस्तावेज़ दस्तावेज़ = Jsoup.parse(html);
// लाइन ब्रेक और रिक्ति को संरक्षित करने के लिए सुंदर प्रिंटिंग को रोकें
document.outputSettings(new Document.OutputSettings().prettyPrint(false));
// टैग के लिए लाइन ब्रेक को प्रीपेन्ड करें document.select("p").prepend("\\n\\n"); स्ट्रिंग s = document.html().replaceAll('\\\\n', '\n'); वापसी Jsoup.clean(s, "", Whitelist.none(), new Document.OutputSettings().prettyPrint(false)); }
यह कस्टम फ़ंक्शन सुनिश्चित करता है कि लाइन ब्रेक संरक्षित हैं, वांछित आउटपुट के साथ संरेखित हैं। यह दो प्रमुख आवश्यकताओं को पूरा करता है:public static String br2nl(String html) {
if (html == null)
return html;
Document document = Jsoup.parse(html);
// Suppress pretty printing to preserve line breaks and spacing
document.outputSettings(new Document.OutputSettings().prettyPrint(false));
// Append line breaks for
tags
document.select("br").append("\\n");
// Prepend line breaks for tags
document.select("p").prepend("\\n\\n");
String s = document.html().replaceAll("\\\\n", "\n");
return Jsoup.clean(s, "", Whitelist.none(), new Document.OutputSettings().prettyPrint(false));
}
मूल लाइन ब्रेक (\n) संरक्षित हैं।टैग लाइन ब्रेक (\n) में परिवर्तित हो जाते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3