java只是文件中的数字
Scanner sc = new Scanner(System.in);
System.out.println("Enter file name");
String fileName = sc.next();
String line;
Pattern p = Pattern.compile("\\d+");
Scanner s = new Scanner (new File(fileName));
while(s.hasNextLine()){
line = s.next();
Matcher m = p.matcher(line);
while(m.find()){
System.out.println(m.group());
}
}
文件看起来像这样
---------------
aaaa bbb
//another comment
// a d 3 5
2 4 6
2 a 6
10 10
30 20
nbnb
------------
我想让它打印出每行的数字 例如:
2 4 6
2 6
10 10
30 20
它会打印出每个数字,包括注释中的数字。它还在每行上打印一个数字。我希望它像示例中那样打印,并跳过注释
# 1 楼答案
我猜你是想用反斜杠:
从你写的那句话开始:
查找两个前斜杠,后跟至少一个字母
d
的实例以下代码似乎以您想要的方式运行:
输出:
注意——不要对每个数字使用)。否则,就不需要换行符(因此纯文本行不会产生空白)
println()
,因为它会生成换行符。相反,我在while
循环之前设置了一个标志;如果我离开循环并设置了标志,这意味着字符串中有数字,我需要换行符(^{我使用的是一个在线Java编译器,因此无法测试代码中的文件I/O部分——但我认为这应该能帮助您