我有逐行检查文本文件的代码,但我不确定如何检查特定格式。如果文本文件采用以下格式打印出内容,否则将显示一条消息,说明“文件不正确”。
的第一行应该以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));

正则表达式是:首先分别SV,然后:,然后是a-z ot 0或1或e之间的任何字符。
?表示0或1次重复,因此[A-Z01e]?[A-Z01e]?[A-Z01e]表示1-3个字符,每个字符为a-z或0或1或e。

09-26 20:49