Сегодня столкнулся (в очередной раз) с насущной потребностью. На экране Sisco Phone (Сиськофон) определился номер абонента. Естественно, в служебной базе данных нет номеров личных абонентов. Лезу в Аутлук, вывожу список контактов, пытаюсь найти фамилию по номеру телефона. Но, не тут-то было

Сортировка внутри отдельной колонки осуществляется по правилам грамматики - слева направо. Колонок с номерами телефонов больше трех. номера начинаются с префикса, без префикса, префикс_в_скобочках. Короче, проще позвонить по определившемуся номеру и спросить, кто звонил и зачем. Последнее действие не всегда целесообразно как по личным мотивам, так и по техническим сложностям (например, если фирма выходит в город через офисную АТС).
Отсюда вытекает
потребность:
- найти абонента в контактах по номеру телефона (не важно, в каком поле базы данных этот номер записан).
= пути решения:
А:
0) провести поиск телефонных номеров по всем [тел/факс] полям контактов
1) изменить порядок сортировки на обратный = сортировать (искать), начиная с последней цифры номера.
2) показать результаты поиска, отсортировав их по релевантности.
Б.
В случае, если определился неполный номер или какие-то цифры в номере искажены - вычислить расстояние Хемминга (количество ошибочных цифр) и показать наиболее вероятные номера из ЛТ.