簡體   English   中英

如何將逗號分隔的字符串轉換為字符串,每個字符串用單引號括起來並用逗號分隔

[英]How to convert a string of coma separated characters to a string of strings with each string in single quotes and separated by comma

我有一個字符串

"#72c02c, #3498db, #e67e22, #9c8061, #4765a0, #79d5b3"

我想將其轉換為以下內容:

"'#72c02c', '#3498db', '#e67e22', '#9c8061', '#4765a0', '#79d5b3'"

有什么辦法嗎?

我不知道為什么每個人都在使用正則表達式......這只需要一個簡單的文本替換:

str = "'" + str.replace(", ", "', '") + "'";

這只是在逗號之前/之后加上引號,並在每一端加上引號,這很容易理解。

String s = "#72c02c, #3498db, #e67e22, #e74c3c, #ecf0f1, #9b6bcc, #27d7e7, #9c8061, #4765a0, #79d5b3";

            s = s.replaceAll("(#|,)","'$1");
            if (s.charAt(s.length()-1) != ',')
                    s = s + "'";

可能不是最完美的解決方案,但它處理的最后一個項目的情況下,該字符串不是一個結束, 如果它也恰好以逗號結尾,也將起作用。

如果您能夠像使用簡單的 String 對象實例一樣使用它,則可以使用正則表達式([#\\w]+)String.replaceAll()方法來完成,例如:

String testString = "#72c02c, #3498db, #e67e22, #e74c3c, #ecf0f1, #9b6bcc, #27d7e7, #9c8061, #4765a0, #79d5b3";
System.out.println(testString.replaceAll("([#\\w]+)","'$1'"));

使用([#\\w]+) ,您只需取每組字母數字字符或#

然后您只需將其替換為'$1' ,其中$1是找到的整個組。

暫無
暫無

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

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