所以给出数据例如:
a898 //result string1=a string2=898
b832 //string1=b string2=832
c3232 //string1=c string2=3232
d938202 //string1=d string2=938202
我试图收到这封信并将其放入String
,然后将其余数字放在另一个String
中。我正在使用charAt(0)
来获取这封信,但由于它们的长度不同,我在找到分割数字的方法时遇到了问题。
我使用的一种方式,当没有26个差异选项时,在另一个程序中,a
替换为a|
,b
替换为b|
,等等然后拆分|
。它导致非常丑陋的代码,我希望有另一种选择。谢谢你的时间!
答案 0 :(得分:5)
您可以使用
String str = "d938202";
String string1 = str.substring(0, 1);
String string2 = str.substring(1);
答案 1 :(得分:2)
您还可以使用以下内容:
String[] arr = "d938202".split("(?<=[a-z])");
//arr[0] = "d"
//arr[1] = "938202"
split
使用正则表达式(Regex)语法,它允许我们描述要拆分的位置。在这种情况下,感谢look-around mechanisms我们可以将这个地方描述为一个在它之前具有字母字符(a-z)的地方。