【发布时间】:2015-05-18 12:38:02
【问题描述】:
我想在分隔符上拆分字符串。 示例字符串:
String str="ABCD/12346567899887455422DEFG/15479897445698742322141PQRS/141455798951";
现在我想要字符串为ABCD/12346567899887455422,DEFG/15479897445698742322141,就像我想要的那样
-
/前仅 4 个字符 - 在 / 任意数量的字符数字和字母之后。 更新: 我需要前 4 个字符的唯一时间是在显示分隔符之后,因为字符串可能包含字母或数字...
我的代码尝试:
public class StringReq {
public static void main(String[] args) {
String str = "BONL/1234567890123456789CORT/123456789012345678901234567890HOLD/123456789012345678901234567890INTC/123456789012345678901234567890OTHR/123456789012345678901234567890PHOB/123456789012345678901234567890PHON/123456789012345678901234567890REPA/123456789012345678901234567890SDVA/123456789012345678901234567890TELI/123456789012345678901234567890";
testSplitStrings(str);
}
public static void testSplitStrings(String path) {
System.out.println("splitting of sprint starts \n");
String[] codeDesc = path.split("/");
String[] codeVal = new String[codeDesc.length];
for (int i = 0; i < codeDesc.length; i++) {
codeVal[i] = codeDesc[i].substring(codeDesc[i].length() - 4,
codeDesc[i].length());
System.out.println("line" + i + "==> " + codeDesc[i] + "\n");
}
for (int i = 0; i < codeVal.length - 1; i++) {
System.out.println(codeVal[i]);
}
System.out.println("splitting of sprint ends");
}
}
【问题讨论】:
-
在我看来你想要进行正则表达式匹配,而不是拆分。