已修复我的问题 - 帖子可以删除。谢谢大家的帮助。
我需要一些在Java中拆分字符串的帮助。我有一个像这样的字符串:
{'key'=>value1,'key2'=>'value2','key3'=>{'innerKey1'=>'innerValue1'...} ...}
我需要拆分它以便我有HashMap:
当我尝试从key3解析值时,它会以同样的方式再次拆分它。内部元素可能有很多层次。我还需要它在键和值部分中使用特殊字符,如'或\。我使用过这样的东西:
result = string.split( ",(?=([^\"]*\"[^\"]*\")*(?![^\"]*\"))" );
但我不知道如何将整个{...}
视为值而不是用逗号分隔它。
我正在考虑为此使用JSON,但也许有人知道一些regexp或小函数,这比倾向于JSON库更快。
答案 0 :(得分:0)
您应该考虑解析器。
拆分只是简单,在特殊情况下会失败。
解析器能够生成全面的错误消息。 随着分裂你很快失去
答案 1 :(得分:0)