2011-08-12 3 views
6

Как я могу удалить эти:Как удалить неиспользуемые пробелы из документа JSoup?

<td>&nbsp;</td> 

или

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

из 'Документ' мой JSoup? Я пробовал много методов, но эти неразрывные символы пробелов не соответствуют ни с обычными выражениями JSoup, ни с Селекторами.

+1

Невозможно ли открыть документ в среде IDE или текстовом редакторе, например Notepad ++, и найти и заменить? Или вы имеете в виду, что вам нужно делать это программно? – tw16

+0

JSoup - это библиотека, которая анализирует данные FETCHED HTML для приложения. Так что нет, то, что вы предлагаете, не только невозможно, но и не применимо. :) –

+0

Это относится ко всему документу или только в '' элементах? Кстати, знаете ли вы, что в браузере MSIE возникают проблемы с полностью пустыми элементами ''? A '  ' - это классическое обходное решение для этого плохого поведения MSIE. – BalusC

ответ

12

Объект HTML &nbsp; (Unicode character NO-BREAK SPACE U+00A0) может в Java быть представлен символом \u00a0. Предполагая, что вы хотите, чтобы удалить все элемент, который содержит этот символ в качестве собственного текста (и, таким образом, не каждый линии, как вы сказали, в комментарии), то следующее должно работать:

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

Если вы действительно чтобы удалить всю строку , тогда ваш лучший выбор - это действительно сканировать HTML самостоятельно.

Смежные вопросы