2016-01-28 194 views
-4

我有一個字符串,如:拆分逗號分隔的字符串,但忽略逗號整個字

String test = "firstName:a,lastName:b,addressOne:line 1,line 2,city:other"; 

我試圖做test.replaceAll(",","\",\"")。我的意思是取代,用「」。我只想要這整個琴絃。例如,addressOne是一個單獨的字符串,用逗號分隔,我不想替換它。有沒有任何正則表達式或其他方式我可以做到這一點? 我應該像

"firstName":"a","lastName":"b","addressOne":"line 1 , line 2","city":"other" 
after replace , but i am getting 
"firstName":"a","lastName":"b","addressOne":"line 1 "," line 2","city":"other". 
+1

是,即使是有效的Java語句? – anubhava

+2

donno你期待什麼..字符串或列表或漢堡? –

+0

第一行沒有意義。請重寫。另外,這是JSON? – user1803551

回答

2

您可以用後跟其一直遵循的:一個字逗號分割你的字符串的字符串。而對於這個目的,你可以使用一個positive look-ahead和匹配的開頭字用一個否定的字符類[^:,]+將匹配任何字符串,除了:,

test.split(",(?=[^:,]+:)")