2011-08-12 14 views
6

Jak mogę usunąć te:Jak usunąć niepodzielone spacje z dokumentu JSoup?

<td>&nbsp;</td> 

lub

<td width="7%">&nbsp;</td> 

od mojego 'dokument' JSoup? Próbowałem wielu metod, ale te nierozdzielające się znaki spacji nie pasują do niczego z normalnymi wyrażeniami JSoup lub selektorami.

+1

Czy nie można otworzyć dokumentu w edytorze IDE lub edytorze tekstów, takim jak Notepad ++, a do znalezienia i zamiany? Czy masz na myśli, że musisz to zrobić programowo? – tw16

+0

JSoup to biblioteka, która analizuje dane FETCHED HTML dla aplikacji. Więc nie, to, co sugerujesz, jest nie tylko niemożliwe, ale nie dotyczy. :) –

+0

Czy dotyczy to całego dokumentu, czy tylko elementów ''? Przy okazji, czy wiesz, że przeglądarka MSIE wyświetla problemy z całkowicie pustymi '' elementami? ''   'jest mianowicie klasycznym obejściem tego niewłaściwego zachowania MSIE. – BalusC

Odpowiedz

12

Obiekt HTML &nbsp; (Unicode character NO-BREAK SPACE U+00A0) może w Javie być reprezentowany przez znak \u00a0. Zakładając, że chcesz usunąć każdą elementu który zawiera ten znak jako własny tekst (a zatem nie każdy linii jak pan powiedział w komentarzu), a następnie następujące powinien pracować:

document.select(":containsOwn(\u00a0)").remove(); 

Jeśli naprawdę oznacza, że ​​należy usunąć całą linię , a następnie najlepiej zeskanować HTML sam wiersz po linii.

Powiązane problemy