Java String.split() и сравнить
Я работаю с летающей тарелкой и хочу экспортировать HTML в PDF. Все отлично работает, но теперь я хочу добавить пустой столбец, например, для описания или что-то.
Я хочу создать метод addColumn(). который должен добавить в каждую строку таблицы в конце новую пустую ячейку.
Я попробовал следующий код:
String[] arr = content.split("<td");
String test = "";
for (int i = 0; i < arr.length; i++) {
if(i != 0){
arr[i] = "<td" + arr[i];
test += arr[i];
}
}
Это должно разделить содержание на каждом начале "td"
тег. String.split("<td")
удаляет "<td"
из содержания, поэтому я хочу добавить его снова.
Но если я сравню их:
if(test.equalsIgnoreCase(content)){
System.out.println("SUCCESS");
}
else{
System.out.println("FAIL");
}
Я всегда терплю неудачу.
Просто помогите мне вернуть правильный контент из массива, это заставит меня сделать шаг в правильном направлении!
Спасибо.
1 ответ
Попробуйте заменить ваш split
строка с этим:
String[] arr = content.split("<td", -1);
В противном случае вы потеряете некоторый вклад в arr
см split(String)
API документация:
Этот метод работает так, как если бы он вызывал метод разбиения с двумя аргументами с данным выражением и предельным аргументом, равным нулю. Поэтому завершающие пустые строки не включаются в результирующий массив.
Добавленный -1
убедитесь, что ваш content
также может содержать "<tr"
в его начале, например. Увидеть split(String, int)
API док для дальнейших объяснений.