我有用户输入他们的名字。但我需要做到这一点,所以不允许使用数字或特殊字符。也许某种如果声明说 如果它包含除字母之外的其他内容,请再次尝试其他代码。我不想使用正则表达式,因为我们在课堂上没有理解它。Java-我如何只允许不使用正则表达式的字母字符
1
A
回答
0
您可以设置一个字符串不允许的字符,测试输入的每个字母对这样的模式:
public boolean checkAlphabetic(String aString){
boolean rtn = true;
String allowed="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ";
for(int i=0; i<aString.length(); i++){
String nextLetter = aString.substring(i,i+1);
if(!allowed.contains(nextLetter){
rtn = false;
break;
}
}
return rtn;
}
1
使用Java 8中,可以从利用String::codePoints
与Character::isAlphabetic
一起受益。
String input = "Aominè"; // example input
if(input.codePoints().allMatch(Character::isAlphabetic)){
System.out.println("all alphabets");
}else{
System.out.println("NOT all alphabets");
}
- 您还可以利用
input.chars().allMatch(...)
使用适当的参数。看看Character类为不同的方式来完成相同的结果。 - 另一种选择是循环查看源字符串的字符,并利用方法检查特定字符是否为字母。
相关问题
- 1. 正则表达式属性,只允许字母数字字符
- 2. 正则表达式只允许字符
- 3. 只允许某些非字母字符在正则表达式
- 4. 只允许一个字母字符 - 正则表达式
- 5. 只允许首字母大写字符串(正则表达式)
- 6. Java正则表达式 - 只允许某些字符和数字
- 7. 正则表达式只允许字母数字
- 8. 正则表达式只允许字母和数字
- 9. 只允许字母和正斜杠的正则表达式
- 10. 我需要正则表达式只允许字母,数字和空格,但不允许特殊字符
- 11. 允许在字母数字的正则表达式中使用*
- 12. 正则表达式只允许字母,空格和 - 只有
- 13. 如何使用正则表达式在asp.net中只输入数字不允许的字母或特殊字符?
- 14. 正则表达式允许一个特殊字符(:)和数字和字母只
- 15. 正则表达式只允许字母,数字和至少两个字符
- 16. 正则表达式,它只允许没有口音的字母
- 17. 只允许使用数字,字母和破折号的正则表达式?
- 18. javascript正则表达式:只允许英文字母
- 19. 正则表达式只允许字母,单个空格和“ - ”
- 20. 正则表达式:允许字母和逗号之间只有
- 21. php正则表达式数字和字母不允许只是数字
- 22. 正则表达式允许在Java中使用空格字符
- 23. 正则表达式只允许字母加上其他特定字符
- 24. 如何使用正则表达式来允许某些字符?
- 25. 用于字母数字的正则表达式并允许额外的字符
- 26. 正则表达式只允许字符串,但不允许单词“测试”
- 27. JavaScript的正则表达式,允许字母数字和点(。)
- 28. 允许字母数字, - ,_和空格的正则表达式
- 29. c#正则表达式问题:只允许字母,数字和点(2到20个字符)允许
- 30. 只允许字符或空格的正则表达式
你对输入有什么代码?你是逐字读字还是阅读整行?这将帮助我形成我的答案 – Tyler
'java.lang.Character.isLetter(char ch)'? –
用户如何输入他的名字?也许你可以限制只用于输入字母的键... – deHaar