2013-11-07 2 views
-4

Я пробовал несколько способов, но я не получил точное решение.Сочетание N строк с буквами K

У меня есть требование, как контактный телефон поиск, В клавиатуре содержит

1-nothing 
2-ABC 
3-DEF 
4-GHI 
.. 
. 

Теперь я нажатие 23 кнопок, то поиск идет, как показано ниже

AD , AE , AF , BD , BE , BF , CD , CE , CF 

В том же случае, я прессование 234, затем

ADG , ADH , ADI , AEG , AEH , AEI , AFG , AFH , AFI , BDG , BDH , BDI .......... 
+1

Это не место, где вы можете публиковать свои «требования». Отправьте свой код, если вам нужна помощь. –

+1

Вам действительно нужно показать свою работу до сих пор. В любом случае попробуйте другой подход. Преобразуйте каждое имя контакта в соответствующую последовательность цифр. Тогда алгоритм должен стать более понятным для вас. –

+0

Я пробовал несколько сценариев, но я получаю все комбинации буквенных букв, а не как выше – Nani

ответ

1

Я бы порекомендовал использовать Обычный Выражения здесь. Если вы нажмете 234, вы можете создать регулярное выражение ^[ABC][DEF][GHI] (с опцией ^, если вы хотите только совместить с началом строки). Возможно, вы захотите также использовать нечувствительность к регистру.

Вы также можете сделать это в Android, см. http://developer.android.com/reference/java/lang/String.html#matches(java.lang.String).

(Редактировать: @ Ответ JasonC по преобразованию имен в номера сначала также является хорошим вариантом).

1

Если вы конвертируете каждое имя контакта в соответствующую последовательность цифр, поиск будет гораздо более простым, и вам не придется беспокоиться о создании комбинаций букв.

Bob => 262 
John => 5646 
Steve => 78373 
Show => 7469 
Your => 9687 
Work => 9675 
Please => 753273 

Удачи.

+0

Спасибо. Его работа отлично подходит для меня. Большое спасибо – Nani

Смежные вопросы