Java 搜索包含关键字的两个单词之间的文本文件行
我必须从包含关键字(由两个单词分隔)的文本文件中提取行 我已经只找到了包含关键字的行(withJava 搜索包含关键字的两个单词之间的文本文件行,java,text-files,keyword,Java,Text Files,Keyword,我必须从包含关键字(由两个单词分隔)的文本文件中提取行 我已经只找到了包含关键字的行(withcontains(string)),但是我还需要在这之前和之后有一对行,可能不计算行数,而是搜索这组行的第一个和最后一个字 我怎么能做到 在第一步中,您可以将这些行存储在java.util.List中,然后使用索引遍历该列表 List<String> lines = new ArrayList<String>(); while(reader.ready()){ lines.a
contains(string)
),但是我还需要在这之前和之后有一对行,可能不计算行数,而是搜索这组行的第一个和最后一个字
我怎么能做到 在第一步中,您可以将这些行存储在java.util.List中,然后使用索引遍历该列表
List<String> lines = new ArrayList<String>();
while(reader.ready()){
lines.add(reader.readLine());
}
for(int i = 0; i<lines.size();i++){
if(lines.get(i).contains(string)){
String lineMinusTwo = lines.get(i-2);
String lineMinusOne = lines.get(i-1);
String line = lines.get(i);
String linePlusOne = lines.get(i+1);
String linePlusTwo = lines.get(i+2);
}
}
List line=new ArrayList();
while(reader.ready()){
添加(reader.readLine());
}
对于(inti=0;i如何实现一个“非常粗略”的lexer来读取行并将它们映射到HashMap中。整数是行号,字符串是整行。
处理整个文件,然后在地图上循环,当你找到一行包含关键字时,你可以根据当前行号查找你需要的前n行,以及下n行。你可以发布一个文本文件的示例吗?还可以显示你已经做了什么吗?是一个xml文件,读起来像一个简单的文本文件。我必须提取两个标记之间的内容,本质上;)但在这个标记中,必须有一个我用以下代码找到的特定单词:BufferedReader in=new BufferedReader(new FileReader(pathFile));String line=in.readLine();while(line!=null){if(line.contains(str)){……那么我建议您使用daniel的示例,因为它只是满足您的需要。Dunno,因为关键字在文本中出现了不止一次:(谢谢!但如果我可以不计算就提取文本的行数,但只按第一个和最后一个单词搜索会更好!