即使在转义}或{或“之后,我也想在”},{“上拆分字符串,这给了我错误,任何人都可以让我知道如何实现这一点,这将非常有帮助。
答案 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("},{"))
这允许您将要分割的文字模式保留在源代码中。