【发布时间】:2015-07-31 22:38:54
【问题描述】:
我有一个这样的字符串
"[0.01,3.45],[5.674,8.712],[4.321,8.892],[3.412,6.781]"
我需要提取每一对数字,以便每一对都是字符串数组中的一个单独的字符串
即我想: {"0.01,3.45","5.674,8.712","4.321.8.892","3.412,6.781"}
这是我的代码:
Pattern pattern = Pattern.compile("\\[(.*?)\\]");
String[] result = pattern.split(myString);
.. 我得到 {"",",",",","}
我也尝试了一些不同的正则表达式,但它们只是给了我一个包含一个(长)字符串元素的数组,这显然是我不想要的
问题是正则表达式还是我应该使用不同的代码?
谢谢。
【问题讨论】:
-
您的正则表达式没有达到您的预期。 (Split 需要拆分正则表达式,而不是要保留的正则表达式)...考虑regular-expressions.info 作为初学者,然后在regex101.com 或debuggex.com 上玩arround 在侧节点上:这可以在没有的情况下解决正则表达式很容易。
-
拆分
],[并按照您的预期进行。或者包裹在[]中并假装它是json。