【发布时间】:2015-03-14 17:08:51
【问题描述】:
将String 解析为java.util.Map 的正则表达式是什么,其中字符串具有如下定义的格式:
message_type={any_text}&message_number={digits}&code={digits}&id={digits}&message={any_text}×tamp={digits_with_decimal}
目标是生成一个包含 message_type、message_number、code、id、message 和 timestamp 键的 Map。
这是正则表达式可以解析的东西吗?或者这需要一个有语法的解析器?
更新:
这不是同一个 URI 解析问题。这里的消息是一个正文字符串,因此可能在消息部分中包含“&”。使用带有 '&' 的相同拆分可能会导致错误拆分。
另外,{ } 只是需要被正则表达式替换的理想函数。
【问题讨论】:
-
你不能使用标准库来解析查询字符串吗?
-
我对拆分的担忧是消息部分可能包含字符“&”导致它也在那里拆分,这不是所需的输出
-
你应该写更多关于你想要解析的数据。可以有换行吗?输入可以包含多个
message_type元素吗? -
格式已定义,没有重复键