Антисемия преобразование одинарных кавычек в двойные
Когда я пытаюсь сканировать HTML-тег через антисамми, он дает странный вывод. Он преобразует одинарные кавычки в двойные.
CleanResults cr = as.scan(dirtyContent, policy);
System.out.println(cr.getCleanHTML());
Строка ввода - <span style="font-family: 'times new roman', times, serif;">My name is Gourav</span>
Выходная строка - <span style="font-family: "times new roman" , times , serif;">My name is Gourav</span>
Итак, как вы можете видеть, одинарные кавычки кодируются как "
который при декодировании дает "
вместо '
, Это вызывает проблемы для меня.
Антисамми версия - 1.5.3
Файл политики - antisamy-everythinggoes.xml
Как я могу решить это? Любая помощь приветствуется
2 ответа
Попробуйте это простое решение
try
{
.
.
.
dirtyContent.replaceAll("'", "SOME_COMBINATION_OF_CHARS");
CleanResults cr = as.scan(dirtyContent, policy);
dirtyContent.replaceAll("SOME_COMBINATION_OF_CHARS", "'");// here is your sanitised data
}
catch(Exception ex)
{
//do something on expn
}
Я поднимал этот вопрос в проекте Antisammy GitHub . Теперь эта проблема исправлена :). Пожалуйста, ознакомьтесь с примечаниями к выпуску версии 1.7.1 .