【问题标题】:Tokenize a String on multiple delimiters [closed]在多个分隔符上标记字符串 [关闭]
【发布时间】:2013-03-26 04:48:12
【问题描述】:

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

例子:

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

想要的输出是

键=值
start_time="2013-03-01 03:20:40"
带空格=空格1的键
两个 withspace=space2
键-键键=值
key_underscore=500058
键=值 - 值
key=value_value

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

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

只是想检查一些实现这一目标的最佳方法

【问题讨论】:

标签: java regex stringtokenizer


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-21
      • 2019-08-30
      • 2011-02-08
      • 2021-06-23
      • 2020-04-17
      • 2015-09-18
      • 2023-03-08
      相关资源
      最近更新 更多