检查给定字母表的字符串

时间:2013-05-22 14:23:05

标签: java string performance

我需要检查字符串(单词,没有空格)是否包含给定字母的任何字母。

String A: apple
String B: bed
Alphabet: a b c d e f

我想有效地比较字符串和字母表。 我想要的是检查String是否包含Alphabet中的字母。 现在我将我的字母表放在ArrayList和for循环中 我检查String是否包含arraylist的字母,如果为true,则退出,否则 继续下一封信。 字符串A的上述示例将返回false,因为p和l不是字母表的一部分。但是对于B来说它会回归。

这可以更有效地完成吗? 谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

将“字母”转换为正则表达式,然后使用String.matches()。不确定你到底是怎么回事,但我很确定这是两种选择之一:

要检查该字词是否至少有一个字母表中的字母:

if (str.matches(".*[abcdef].*"))

检查单词是否仅包含 字母:

if (str.matches("[abcdef]+"))

答案 1 :(得分:0)

检查一下这会让你知道如何做到这一点 检查这个.. http://www.tutorialspoint.com/java/lang/string_contains.htm