找到多个模式匹配并替换文本文件中的每个匹配

时间:2015-07-02 09:46:00

标签: java

我想在文本文件中找到多个字符串匹配并替换,并为每个模式替换唯一。

示例

  

我有以下模式分别匹配和替换

我想找到这种模式1。" cd",2。" kj",3。" by"并由此替换:1。" sdi" 2" GE" 3." bi"。

 BufferedReader cd = new BufferedReader(new FileReader("text.txt"));

 String line;
 Pattern pattern = Pattern.compile("cd",Pattern.CASE_INSENSITIVE);
 Matcher matcher;
 while ((line = cd.readLine()) != null) {
    matcher = pattern.matcher(line);
    if (matcher.find()) {
       line = matcher.replaceAll("sdi");
       System.out.println(line); cd.close();

这个简单的代码适用于单一模式匹配。有没有其他办法可以做?

1 个答案:

答案 0 :(得分:2)

为什么你不这样做呢?

yourstring.replaceAll("cd", "sdi").replaceAll("kj", "ge").replaceAll("by", "bi");

这样,编译器将负责实现和匹配模式。