我正在做一个java活动,如果Name以字母A-G开头,Ends with Letter H-z,则输出无效继承我的代码:
System.out.print("Enter your name: ");
String str = in.readLine();
if(str.startsWith("a" )){
System.out.print("INVALID!");
} if(str.endsWith("h")){
System.out.print("INVALID!");
}
这有效,但我如何实现字母a到g和h到z 我已经尝试了这个[a-g]而且没有工作!
答案 0 :(得分:4)
查看String.startsWith()
和String.endsWith()
。这两个String方法都对此任务非常有用。
答案 1 :(得分:4)
您还可以考虑在String.matches()方法中使用正则表达式。像这样:
string.matches("^[A-Ga-g].*.[H-Zh-z]") //Where string is a variable in here
注意:此正则表达式将返回给定的字符串是以A-G开头(大写/小写)还是以H-Z结尾(大写/小写)。因此,您可能希望在执行验证时否定。像这样:
if(!string.matches("^[A-Ga-g].*.[H-Zh-z]")){
//Signifies that the input does not start with A-G and ends with H-Z
}