在},{

时间:2018-06-20 17:57:54

标签: java regex

即使在转义}或{或“之后,我也想在”},{“上拆分字符串,这给了我错误,任何人都可以让我知道如何实现这一点,这将非常有帮助。

3 个答案:

答案 0 :(得分:0)

您应像这样转义第二个“}”:

  public static void main(String[] args) {
    String input = "John},{Doe},{Anna";
    String[] parts = input.split("},\\{"); // '\\{' does the trick

    for (String part : parts){
      System.out.println(part);
    }
  }

输出:

John
Doe
Anna

答案 1 :(得分:0)

您需要转义所有正则表达式元字符(在本例中为$,{和})(尝试使用http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#quote(java.lang.String))或使用其他方法代替字符串,而不是将正则表达式替换为字符串。 / p>

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {

        String str = "Test},{check";
        String arr[] = str.split("},\\{");
        System.out.println(arr[0]+" "+arr[1]);

    }
}

答案 2 :(得分:0)

您可以“手工”引用元字符;不过,这会使您的代码更难以阅读。

执行此操作的另一种方法是使用Pattern.quote

str.split(Pattern.quote("},{"))

这允许您将要分割的文字模式保留在源代码中。