【发布时间】:2015-08-25 21:38:07
【问题描述】:
我想拆分这些字符串:
- /d/{?a}
- /a/b/{c}{?d}
- /a/b/c{?d}
进入以下细分列表:
- [d, {?a}](这种情况很简单,用 / 分割即可)
- [a, b, {c}, {?d}]
- [a, b, c, {?d}]
对于其他情况,使用 / 进行拆分不会得到我想要的结果。在这种情况下,2. 和 3. 的最后一个字符串元素将是 {c}{?d} 和 c{?d}。
同时实现所有 1、2、3 的最佳方法是什么?
谢谢。
【问题讨论】:
-
你试过什么? /a/b/c{?d 是否会被拆分为 [a, b, c{?d] (即因为缺少 })?您希望如何拆分 [a, b, c, {de{f}g}](即嵌套 {})?您是只有 {} 还是 () 或 [] 等?
-
@LuciaPasarin:谢谢你的建议。
-
如何实现另一个这样的案例(所有其他三个案例也必须工作)? /a/b?c=123 => [a, b, c=123] 再次感谢。
-
我明白了:正则表达式:"(/)|(?=\\{\\?)|(?
标签: java string split guava splitter