2016-09-27 42 views
-5

所以我让我的整个程序工作,它甚至在字母上移动,如果它不是元音,但是假设它们彼此紧挨着移动两个常量。所以我搞砸了子字符串,并把(0)中的char变成了一个变量,但是仍然没有任何想法?一次移动两个字母(子字符串)Java

所以这将是if(true)部分。

这里是我的代码:

+0

如果你不能使用正则表达式(如答案),我会遍历单词中的字符,测试每个字母,看它是否是一个元音,在遇到第一个元音停止。我可能想给我写一个静态工具方法'isVowel(char letter)',我会在循环中调用它。 –

回答

0

您可以使用正则表达式匹配查找的元音和返回第一次出现。下面的代码片段将查找单词中的第一个元音并返回其索引。然后你可以在你的子字符串中使用它,而不仅仅是第一个字母。

String word = "test"; 
Pattern pattern = Pattern.compile("[aeiou]"); 
Matcher matcher = pattern.matcher(word); 
if(matcher.find()){ 
    System.out.println(matcher.start()); 
} 
+0

甜,可能有用。但是不知道我是否可以使用它作为rn。 – ForgedFire

+1

如果用户输入一个不包含任何元音的单词?你应该给出一个适当的错误信息。 –

+0

有没有办法稍微改变我的代码,使其工作? – ForgedFire

相关问题