我有代码逐行检查文本文件,但我不确定如何检查特定格式。如果文本文件采用以下格式打印出内容,否则请点击“文件不正确”的消息。
第一行应该以S开头,每行包含任何大写,后跟冒号,而不是任何字母,数字或e。
答案 0 :(得分:1)
您可以使用regular expressions轻松验证格式:
//first line validator:
String reg1 = "S:[A-Z01e]";
//next lines validator:
String reg2 = "V:[A-Z01e]?[A-Z01e]?[A-Z01e]";
//examples/test cases:
System.out.println("S:1".matches(reg1));
System.out.println("S:3".matches(reg1));
System.out.println("S:11".matches(reg1));
System.out.println("V:1e0".matches(reg2));
System.out.println("V:1e01".matches(reg2));
System.out.println("V:1e3".matches(reg2));
正则表达式是:分别是S
或V
,然后是:
,然后是A-Z 0或1或e之间的任何字符。
?
表示0或1个重复,因此[A-Z01e]?[A-Z01e]?[A-Z01e]
表示1-3个字符,每个A-Z或0或1或e。
答案 1 :(得分:0)
我会在每一行使用charAt(1)
。
scan.nextLine();
String line = scanner.next();
if(line.charAt(0).equals("S")) {
} else {
}
我很确定它是如何运作的
答案 2 :(得分:0)