我有一个文本文件,它是从数据库中提取的。每行都是一条记录,我试图解析它。
以下是一些匿名化后的麻烦部分:
-webkit-animation-delay
它可能有字符串或数字,由制表符分隔。字符串在括号内。不幸的是,制表符也可能出现在诸如" Name1" 我通过解决一些解析错误来学习。
我的第一个代码是:
public static void searchStringArray() {
String[] chestOrder = { "silver", "silver", "silver", "gold", "silver",
"silver", "gold", "silver", "silver" };
String searchString = "silver silver silver gold";
StringBuilder tempStr = new StringBuilder();
for (String s : chestOrder) {
tempStr.append(s + " ");
}
Scanner scanner = new Scanner(tempStr.toString());
while (scanner.hasNext()) {
if (null != scanner.findInLine(searchString)) {
System.out.println("" + scanner.next());
} else {
scanner.next();
}
}
scanner.close();
}
但如果某个名称中有制表符,则会出错。
如何分割和解析这些行,忽略名称中的制表符(用括号括起来)并仅检测真正的分隔符?