您可以使用否定的外观来解决它。
String[] parts = str.split("(?<!\\), ");基本上说,在 _
", "没有反斜杠的情况下_拆分每个。
String str = "type=simple, output=Hello\, world, repeate=true";String[] parts = str.split("(?<!\\), ");for (String s : parts) System.out.println(s);输出:
type=simpleoutput=Hello, worldrepeate=true
(ideone.com链接)
如果您碰巧被非转义的逗号分隔值所卡住,则可以执行以下(类似)操作:
String[] parts = str.split(", (?=\w+=)");上面说的每个 单词 都分开, ", "
后面跟一些单词字符和一个=
(ideone.com链接)



