1

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

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

我想有效地比较字符串和字母表。我想要检查字符串是否由字母表中的字母组成。现在我在 ArrayList 和 for 循环中有我的字母表,我检查 String 是否包含 arraylist 的字母,如果为真则退出,否则继续下一个字母。上面的字符串 A 示例将返回 false,因为 p 和 l 不是字母表的一部分。但它会为 B 返回 true。

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

4

2 回答 2

1

Turn the "alphabet" into a regex then use String.matches(). Not sure what you're after exactly, but I'm pretty sure it's one of there two options:

To check that the word has at least one of the letters in the alphabet:

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

To check if the word consists only of the letters of the alphabet:

if (str.matches("[abcdef]+"))
于 2013-05-22T14:35:21.087 回答
0

check this this will give you an idea how to do this check this..http://www.tutorialspoint.com/java/lang/string_contains.htm

于 2013-05-22T14:38:13.040 回答