Я пытаюсь отсортировать объект Android ListView. В настоящее время я использую следующий код:
// Sort terms alphabetically, ignoring case
adapter.sort(new Comparator<String>() {
public int compare(String object1, String object2) {
return object1.compareToIgnoreCase(object2);
};
Это сортирует мой список, игнорируя регистр. Тем не менее, было бы неплохо игнорировать и пунктуацию. Например:
c.a.t.
car
cat
следует отсортировать следующим образом:
car
c.a.t.
cat
(На самом деле не имеет значения, какая из двух кошек (кошка или кошка) будет первой, если они расположены рядом друг с другом).
Есть ли простой способ обойти это? Я предполагаю, что решение будет включать в себя извлечение ТОЛЬКО буквенно-цифровых символов из строк, затем их сравнение, а затем возвращение их в прежнее состояние с включением снова небуквенно-цифровых символов.