如何在java中拆分此字符串

时间:2011-05-12 08:18:29

标签: java string split

在我的程序中,生成一个字符串,如"1&area_id=54&cid=3"。首先是整数,然后是字符串"&area_id=",然后是antoher整数,然后是字符串“& cid =”,然后是最后一个整数。这两个字符串总是相同的。但整数正在改变。如何编写分割函数,以便我可以在三个变量中找到这三个整数或在数组中找到它们。我可以通过循环分离这些但我想使用分割函数。感谢

1 个答案:

答案 0 :(得分:9)

怎么样

string.split("&\\w+=")

这适用于您的示例:

System.out.println(Arrays.asList("1&area_id=54&cid=3".split("&\\w+=")));

输出

[1, 54, 3]

string.split("&\\w+=")的调用以英语读取:在正则表达式参数的每个匹配项上拆分string,然后将匹配的标记之间的所有子字符串作为数组返回。

正则表达式为:匹配所有以"&"开头的子字符串,后跟至少("+")一个字符("\\w",即字母,数字和一些特殊字符,例如您示例中的下划线),后跟"="。有关更多详细信息,请参阅java.util.regex.Pattern

的Javadoc