使用双引号对字符串进行子串的正则表达式

时间:2014-02-02 05:47:41

标签: java regex

这可能听起来是一个直接的问题,但我是Java中的Regex的新手。 我想要的只是,我有一个像下面的字符串(它是一个完整的字符串)。

[["name1", "link whaterevercom"],
 ["name2", "link whatevercom2"]]

我想要的是一个包含{name1,link whatevercom, name2, link whatevercom2}的String数组 我可以通过substring和loop以及那种无聊的方式来实现这一点。我知道split()方法支持Regex。 任何人都可以帮我实现Regex吗?

任何帮助将非常感谢。先感谢您。

2 个答案:

答案 0 :(得分:2)

如果您想使用split(),可以执行以下操作:

String input = "[[\"name1\", \"link whaterevercom\"],[\"name2\", \"link whatevercom2\"]]";
String[] split = input.replaceAll("\\[|\\]|\"","").split(",\\s*");

答案 1 :(得分:2)

你可以摆脱括号并拆分“,”:

String s = "[[\"name1\", \"link whaterevercom\"], [\"name2\", \"link whatevercom2\"]]";
s = s.replaceAll("\\[|\\]","");
String[] arr = s.split(", ");
System.out.println(Arrays.toString(arr)); 
// prints: ["name1", "link whaterevercom", "name2", "link whatevercom2"]