0

我想将字符串标记为键值对。但是键有下划线、逗号、空格等字符。键值对由 = 字符分隔

例子:

key=value start_time="2013-03-01 03:20:40" key withspace=space1 两个withspace=space2 key=value key-key key=value key_underscore=500058 key=value-value key=value_value

所需的输出是

key=value
start_time="2013-03-01 03:20:40"
key withspace=space1
两个withspace=space2
key-key key=value
key_underscore=500058
key=value-value
key=value_value

这有助于我在地图中填充值并将其放入表格中。

我可以使用任何现有的方法,如 StringTokenizer、Patter、String.split() 等。还是我应该编写自己的字符串解析器来获得这种类型的输出。

只想检查一些最好的方法来实现这一点

4

2 回答 2

3

String.split()需要一个正则表达式。如果您可以输入一个正则表达式来匹配您的一组键,您可以使用它

于 2013-03-26T04:50:30.047 回答
1

带空格的键不起作用,至少在给定的规则下。key=value - value key= value_value是模棱两可的。最后一个键值对可以提取为key = value_valuevalue key= value_value

于 2013-03-26T05:04:26.477 回答