最初の単語を読み込んだら、この関数を呼び出すことができます(最初の単語をパラメーターとして渡す)。単語に不正な文字が含まれている場合は、trueが返されます。次に、最後の単語をテストするために別の単語を簡単に作成できます。
public boolean containsIllegalChar(String testWord){
boolean containsIllegalChar = false;
for(int count=0; count < testWord.length(); count++){
char testChar = testWord.charAt(count);
switch (testChar)
{
case ''': containsIllegalChar = true;
break;
case '"': containsIllegalChar = true;
break;
case '$': containsIllegalChar = true;
break;
case ' ': containsIllegalChar = true;
break;
default: break;
}
}
return containsIllegalChar;
}
最後の単語をテストするには、この構造を使用できます
String lastWord = "";
while((holder = reader.read()) != -1){
lastWord = holder;
//YOUR PROCESSING
}
boolean testLastWord = containsIllegalCharLastWord(lastWord);
if(testLastWord){
//Contains illegal char
}
else{
//Does not contain
}
文字列を素敵な正規表現に対してテストすることで、containsIllegalChar関数を置き換えることもできます。例えば
boolean validWord = ("piz'za".matches("[^'\"$ ]+")) ? true : false;
System.out.println(validWord);
結果:
false
お役に立てれば。フィル