Očuvanje prekida crte prilikom upotrebe Jsoupa

1. Pregled

U ovom uputstvu ukratko ćemo pogledati različite načine očuvanje prijeloma linija kada se pomoću Jsoupa raščlanjuje HTML na običan tekst. Objasnit ćemo kako sačuvati prijelome redaka povezane s novim redom (\ n), kao i oni povezani s

i

2. Očuvanje \ n Tijekom raščlanjivanja HTML teksta

Jsoup uklanja znak novog reda (\ n) prema zadanim postavkama iz HTML teksta i svaki novi redak zamjenjuje razmakom.

Međutim, kako bismo spriječili Jsoupa da ukloni znakove novog retka, možemo promijeniti OutputSetting Jsoupa i onemogućite prilično ispis. Ako je onemogućen lijepi ispis, HTML metode izlaza neće ponovno formatirati izlaz, a izlaz će izgledati kao ulaz:

Document.OutputSettings outputSettings = novi Document.OutputSettings (); outputSettings.prettyPrint (netačno);

Nadalje, možemo koristiti Jsoup#čist da biste uklonili sve HTML oznake iz niza:

Niz strHTML = "Pozdrav \ nsvijet"; Niz strWithNewLines = Jsoup.clean (strHTML, "", Whitelist.none (), outputSettings);

Pogledajmo kakav je naš izlazni niz strWithNewLines izgleda kao:

assertEquals ("Zdravo \ nsvijet", strWithNewLines);

Stoga to možemo vidjeti pozivom Jsoup#čist s Bijela lista#nijedna i onemogućavajući postavku izlaza za lijepi ispis Jsoupa, u mogućnosti smo sačuvati prijelome redaka povezane s znakom nove linije.

Da vidimo što još možemo učiniti!

3. Očuvanje prekida linija povezanih s

i

Oznake

Tijekom čišćenja HTML teksta pomoću Jsoup#čist metodom uklanja prijelome redaka stvorene HTML oznakama poput

i

Da bismo sačuvali prijelome linija povezanih s tim oznakama, prvo moramo stvoriti Jsoup Dokument iz našeg HTML niza:

String strHTML = "Pozdrav

Svijet

Stavak

"; Dokument jsoupDoc = Jsoup.parse (strHTML);

Dalje, stavljamo znak novog retka ispred znaka

i

Document.OutputSettings outputSettings = novi Document.OutputSettings (); outputSettings.prettyPrint (netačno); jsoupDoc.outputSettings (outputSettings); jsoupDoc.select ("br"). before ("\ n"); jsoupDoc.select ("p"). before ("\ n");

Ovdje smo koristili Odaberi metoda Jsoupa Dokument zajedno sa prije metoda za dodavanje znaka novog retka.

Nakon toga dobivamo HTML niz iz jsoupDoc zadržavajući izvorne nove linije:

Niz str = jsoupDoc.html (). ReplaceAll ("\ n", "\ n");

Napokon, zovemo Jsoup#čist s Bijela lista#nijedna i onemogućena postavka izlaza za prilično ispis

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

I naš izlazni niz strWithNewLines izgleda kao:

assertEquals ("Pozdrav \ nSvijet \ nParagraf", strWithNewLines);

Dakle, predizborom

i

4. Zaključak

U ovom kratkom članku naučili smo kako sačuvati prijelome redaka povezane s novim redom (\ n) znakova i

i

Kao i uvijek, svi su ovi uzorci koda dostupni na GitHub-u.


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