嗨,在我的程序中生成"1&area_id=54&cid=3"一个字符串"&area_id=",如.First一个整数然后一个字符串,然后是antoher整数,然后是一个字符串"&cid ="然后是最后一个整数.这两个字符串总是相同的.但整数正在改变.如何写分裂函数,以便我可以在三个变量或数组中找到这三个整数.我可以通过循环分离这些,但我想使用拆分函数.谢谢
怎么样
string.split("&\\w+=")
Run Code Online (Sandbox Code Playgroud)
这适用于您的示例:
System.out.println(Arrays.asList("1&area_id=54&cid=3".split("&\\w+=")));
Run Code Online (Sandbox Code Playgroud)
输出
[1, 54, 3]
Run Code Online (Sandbox Code Playgroud)
对string.split("&\\w+=")英语读取的调用 :string在正则表达式参数的每个匹配上拆分,然后将匹配的标记之间的所有子串作为数组返回.
正则表达式为:匹配所有以字符串开头的子字符串"&",后跟至少("+")一个字符字符("\\w"即字母,数字和一些特殊字符,例如您示例中的下划线),后跟"=".有关更多详细信息,请参阅Javadoc forjava.util.regex.Pattern