【发布时间】:2015-09-28 13:23:01
【问题描述】:
我有这样的字符串:
{"ssid":"TEST", "key_mgmt":"NONE", "priority":"102",}
我正在尝试删除最后一个属性后的最后一个逗号。
,}
使用:
.replaceAll("(,[[:space:]]*})", "}")
但它抛出以下错误:
Syntax error in regexp pattern near index 15:
(,[[:space:]]*})
请问如何解决?
注意:Android SDK 中使用的是 Java。
【问题讨论】:
-
你应该试试
,\s*}。括号在您的情况下是可选的。 -
我刚刚用普通的Java测试过,运行良好。这可能与Android SDK有关,但我不熟悉。它表示错误接近
}。也许你需要用反斜杠转义它? -
你确定Java支持
[[:space:]]类型表达式吗? -
尝试
.replaceAll(",\\p{Space}*}", "}"),或匹配任何Unicode空格,使用.replaceAll(",\\s*}", "}")。
标签: java android regex whitespace