java中用正则表达式提取txt文件并保留文件格式
时间: 2024-10-22 22:05:01 浏览: 63
在Java中,你可以使用`java.util.regex.Pattern`和`java.io.BufferedReader`等类结合,配合`Files.lines()`方法来读取TXT文件,并利用正则表达式(Pattern.compile())来提取需要的信息。下面是一个简单的示例:
```java
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExtract {
public static void main(String[] args) {
String filePath = "path_to_your_txt_file.txt"; // 替换为你的文件路径
String regexPattern = "(?i)\\bkeyword\\b"; // 替换为你想匹配的关键字,(?i)表示忽略大小写
try (BufferedReader reader = new BufferedReader(new FileReader(new File(filePath)))) {
Pattern pattern = Pattern.compile(regexPattern);
for (String line; (line = reader.readLine()) != null; ) {
Matcher matcher = pattern.matcher(line);
if (matcher.find()) { // 如果找到匹配项
System.out.println("Original line: " + line);
System.out.println("Matched keyword: " + matcher.group()); // 输出匹配到的内容
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在这个例子中,程序会遍历每个TXT文件行,如果行中包含指定的关键字,就会打印出原始行以及匹配到的关键词。
阅读全文