如何在JAVA中拆分字符串

Ade*_*han -2 java

我有一个很长的字符串,我想分开作为一个规则.我的字符串是:

    [1] (dokuma) deve, öküz, at tüyü, keçi k?l? veya koyun yününün s?k??t?r?larak sertle?tirilmesiyle imal edilen ve giyecek yap?m?nda kullan?lan kal?n ve kaba kuma? [2] (giyim) kuma?tan yap?lan yakas?z bol ve uzun üstlük [3] (halk a?z?) abla, anne [4] (halk a?z?) dar pantolon üzerine giyilen ceket
Run Code Online (Sandbox Code Playgroud)

我希望表现出来:

[1] (dokuma) deve, öküz, at tüyü, keçi k?l? veya koyun yününün s?k??t?r?larak sertle?tirilmesiyle imal edilen ve giyecek yap?m?nda kullan?lan kal?n ve kaba kuma? 
[2] (giyim) kuma?tan yap?lan yakas?z bol ve uzun üstlük 
[3] (halk a?z?) abla, anne 
[4] (halk a?z?) dar pantolon üzerine giyilen ceket
Run Code Online (Sandbox Code Playgroud)

我的代码是:

String[] strMeaning = meanings.text().split("[");
        for(String key : strMeaning)
        {
            System.out.println(key);
        }
Run Code Online (Sandbox Code Playgroud)

我看到的错误是:

Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 0
[
^
    at java.util.regex.Pattern.error(Unknown Source)
    at java.util.regex.Pattern.clazz(Unknown Source)
    at java.util.regex.Pattern.sequence(Unknown Source)
    at java.util.regex.Pattern.expr(Unknown Source)
    at java.util.regex.Pattern.compile(Unknown Source)
    at java.util.regex.Pattern.<init>(Unknown Source)
    at java.util.regex.Pattern.compile(Unknown Source)
    at java.lang.String.split(Unknown Source)
    at java.lang.String.split(Unknown Source)
    at wikipedia.CreateXML.wordMeaning(CreateXML.java:39)
    at wikipedia.CreateXML.prepareData(CreateXML.java:33)
    at wikipedia.Main.main(Main.java:32)
Run Code Online (Sandbox Code Playgroud)

我弄清楚了.我怎么能分开我想要的方式?提前致谢

Rei*_*eus 5

Open square bracket [是一个特殊字符,用于表示字符类的开头,你需要将其转义:

meanings.text().split("\\[");
Run Code Online (Sandbox Code Playgroud)