שמירה על הפסקות קו בעת שימוש ב- Jsoup

1. סקירה כללית

במדריך זה נבחן בקצרה את הדרכים השונות של שמירה על מעברי שורות בעת שימוש ב- Jsoup לניתוח HTML לטקסט רגיל. נסקור כיצד לשמור על מעברי קווים הקשורים לקו חדש (\ n) תווים, כמו גם אלה הקשורים

ו

2. שימור \ n תוך כדי ניתוח טקסט HTML

Jsoup מסיר את הדמות החדשה (\ n) כברירת מחדל מטקסט ה- HTML ומחליף כל שורה חדשה באופי חלל.

עם זאת, כדי למנוע מ- Jsoup להסיר את התווים החדשים, אנו יכולים לשנות את הגדרת פלט של Jsoup והשבית הדפסה יפה. אם ההדפסה היפה מושבתת, שיטות הפלט של HTML לא יעצבו מחדש את הפלט והפלט ייראה כמו הקלט:

Document.OutputSettings outputSettings = Document.OutputSettings חדש (); outputSettings.prettyPrint (false);

יתר על כן, אנו יכולים להשתמש ג'סופ#לְנַקוֹת כדי להסיר את כל תגי ה- HTML מהמחרוזת:

מחרוזת strHTML = "שלום \ n עולם"; String strWithNewLines = Jsoup.clean (strHTML, "", Whitelist.none (), outputSettings);

בואו נראה מה מחרוזת הפלט שלנו strWithNewLines נראה כמו:

assertEquals ("שלום \ nworld", strWithNewLines);

לכן אנו יכולים לראות זאת על ידי התקשרות ג'סופ#לְנַקוֹת עם רשימת היתרים#אף אחד והשבית את הגדרת הפלט עם ההדפסה היפה של Jsoup, אנו מסוגלים לשמר את מעברי השורות הקשורים לדמות השורה החדשה.

בואו נראה מה עוד אנחנו יכולים לעשות!

3. שימור הפסקות קו המשויך

ו

תגים

תוך כדי ניקוי טקסט ה- HTML באמצעות ה- ג'סופ#לְנַקוֹת בשיטה, זה מסיר את מעברי השורות שנוצרו על ידי תגי HTML כמו

ו

כדי לשמור על מעברי השורות המשויכים לתגיות אלה, ראשית עלינו ליצור Jsoup מסמך ממחרוזת ה- HTML שלנו:

מחרוזת strHTML = "שלום

עוֹלָם

פסקה

"; מסמך jsoupDoc = Jsoup.parse (strHTML);

לאחר מכן, אנו תולים דמות קו חדש לפני ה-

ו

Document.OutputSettings outputSettings = Document.OutputSettings חדש (); outputSettings.prettyPrint (false); jsoupDoc.outputSettings (outputSettings); jsoupDoc.select ("br"). לפני ("\ n"); jsoupDoc.select ("p"). לפני ("\ n");

הנה, השתמשנו ב- בחר שיטת Jsoup מסמך ביחד איתי לפני שיטה לתלות את הדמות החדשה.

לאחר מכן, אנו מקבלים את מחרוזת ה- HTML מ jsoupDoc שמירה על הקווים החדשים המקוריים:

מחרוזת str = jsoupDoc.html (). להחליף את כל ("\ n", "\ n");

לבסוף, אנו מתקשרים ג'סופ#לְנַקוֹת עם רשימת היתרים#אף אחד והגדרת פלט ההדפסה היפה מושבתת:

String strWithNewLines = Jsoup.clean (str, "", Whitelist.none (), outputSettings);

ומחרוזת הפלט שלנו strWithNewLines נראה כמו:

assertEquals ("שלום \ nWorld \ nParagraph", strWithNewLines);

לפיכך, על ידי מראש

ו

4. מסקנה

במאמר קצר זה למדנו כיצד לשמור על מעברי קווים הקשורים לקו חדש (\ n) דמויות וה

ו

כמו תמיד, כל דוגמאות הקוד הללו זמינות ב- GitHub.


$config[zx-auto] not found$config[zx-overlay] not found