-4

我尝试了多种方法,但没有得到确切的解决方案。

我有电话联系人搜索之类的要求,在键盘中包含

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 ..........
4

2 回答 2

1

如果您将每个联系人姓名转换为其对应的数字序列,搜索将更加直接,您不必担心创建字母组合。

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

祝你好运。

于 2013-11-07T06:49:04.200 回答
1

我建议在这里使用正则表达式。如果您按 234 ,那么您可以构造正则表达式^[ABC][DEF][GHI]^如果您只想从字符串的开头匹配,则使用可选)。您可能还需要确保使用不区分大小写的匹配。

您也可以在 Android 中执行此操作,请参阅http://developer.android.com/reference/java/lang/String.html#matches(java.lang.String)

(编辑:@JasonC 首先将名称转换为数字的答案也是一个不错的选择)。

于 2013-11-07T06:47:37.957 回答