我有逐行检查文本文件的代码,但我不确定如何检查特定格式。如果文本文件采用以下格式打印出内容,否则将显示一条消息,说明“文件不正确”。
的第一行应该以s开头,每一行由任何大写字母、数字或e组成,后跟冒号。
最佳答案
您可以使用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 ot 0或1或e之间的任何字符。?
表示0或1次重复,因此[A-Z01e]?[A-Z01e]?[A-Z01e]
表示1-3个字符,每个字符为a-z或0或1或e。