Я пытаюсь запросить номер телефона, хранящийся в базе данных контактов Android.
Я предоставляю строку ввода для сравнения, и мне нужен запрос, чтобы выбрать только те строки, которые соответствуют этой строке ввода.
При запросе контактов db я бы хотел, чтобы запрос игнорировал все специальные символы, содержащиеся в числе, и сравнивал входную строку только с цифрами, содержащимися в поле.
Например;если сохраненное число (944) 6-129-337, запрос должен сравнивать входную строку с 9446129337, а не с (944) 6-129-337.
Ниже приведен код, с которым я запрашиваюdb и извлеките числа.
contactCursor = getContentResolver().query(uri, projection,
ContactsContract.Data.MIMETYPE + "='" + ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE + "' AND " +
ContactsContract.CommonDataKinds.Phone.NUMBER + " LIKE ? ",new String[] { input_string }, null);
Проблема, с которой я здесь сталкиваюсь, заключается в том, что он просто выполняет простой поиск в каждом поле телефонного номера без внутреннего удаления (с помощью regexp или изменения запроса?) специальных символов.
Я не знаю, как это сделать, очистив специальные символы внутри запроса.Любая помощь в этом отношении, которая помогла бы мне решить эту проблему, будет высоко оценена
Спасибо, Anees