我正在寻找一个.txt文件,然后将其拆分成多个字符串,但不包括某些行。
我想要分割的文件示例:
10:
String One
20:
String Two
等等。我希望忽略所有数字和冒号,然后将字符串保存在它下面,但停在下一个数字处。
我知道这是非常具体的,我试图自己做,但我没有运气。如果我不能这样做,我确实有一个解决方法,但最终我会有大量的.txt文件,这不是很好。
答案 0 :(得分:1)
为什么使用Java,当sed非常适合这个?
1,/^10:/d
/^20:/q
这将删除第一行和以10:
开头的行之间的所有行,在其后面打印行,并在看到以20:
开头的行时退出。
或者,如果要删除所有带有数字后跟冒号的行,可以使用:
/^[[:digit:]]\{1,\}:$/d
这将删除包含1位或多位数的所有行,然后删除冒号,而不删除任何其他行。
答案 1 :(得分:1)
您可以尝试这样的事情:
Scanner file = new Scanner(new File("file.txt"));
file.useDelimiter("\n?\\d+:\n");
while (file.hasNext())
System.out.println(file.next());
String One String Two