簡體   English   中英

如何在內容中使用引號拆分String

[英]How to split String with quotes in content

我有一個看起來像這樣的字符串:

"["xxx","yyy","zzz"]"

任何人都可以給我一個如何將其轉換為如下所示的數組的提示:

somestring[0]="xxx"
somestring[1]="yyy"
somestring[2]="zzz"

表達方式

"[\"xxx\",\"yyy\",\"zzz\"]".replaceAll( "[\\\"\\[\\]]", "" ).split( "," );

將導致一個數組:

a[0] = "xxx";
a[1] = "yyy";
a[2] = "zzz";

我希望...

[1小時后......]

我確定:

public static void main(String[] args) {
    for( String part : "[\"xxx\",\"yyy\",\"zzz\"]".replaceAll( "[\\\"\\[\\]]", "" ).split( "," )) {
        System.out.println( part );
    }
}

輸出:

xxx
yyy
zzz

骯臟的黑客

String s1="[\"xxx\",\"yyy\",\"zzz\"]";
        String s2= s1.replaceAll("\"", "" );
        s2=s2.replace("[", "");
        s2=s2.replace("]", "");
        String ar[] =s2.split(",");

查看輸入字符串模式, substring也將起作用:

String inStr = "\"[\"xxx\",\"yyy\",\"zzz\"]\"";
String [] inArray = inStr.substring(0,inStr.length()-2).substring(2).split(",");
System.out.println(Arrays.toString(inArray));

將打印:

    ["xxx", "yyy", "zzz"]

如果你想刪除引號(“),那么寫如下:

String inStr = "\"[\"xxx\",\"yyy\",\"zzz\"]\"";
String [] inArray1 = inStr.substring(0,inStr1.length()-2)
                          .substring(2).replaceAll("\"","").split(",");
System.out.println(Arrays.toString(inArray1));

或者你可以這樣做:

String inStr = "\"[\"xxx\",\"yyy\",\"zzz\"]\"";
String [] inArray = inStr.replaceAll( "[\\\"\\[\\]\"]", "").split( "," );
System.out.println(Arrays.toString(inArray0));

以上兩個將打印:

    [xxx, yyy, zzz]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM