不能使用语言的基本分割组合函数(如Java的String.split,php的explode和implode) 1) 字符串拆分成数组,如”ab&&2”通过”&&”做分隔符,分割得到字符串数组[“ab”,”2”]
时间: 2024-10-23 09:20:30 浏览: 28
当需要对字符串进行复杂分隔处理,而标准的分割函数不能满足需求时,可以采用其他方法。例如,在没有split方法的情况下,你可以手动遍历字符串,遇到指定分隔符时将部分截取并存入数组。这里举个Java的例子:
```java
public String[] manualSplit(String input, String delimiter) {
ArrayList<String> result = new ArrayList<>();
int startIndex = 0;
for (int i = 0; i < input.length(); ) {
int nextDelimiterIndex = input.indexOf(delimiter, startIndex);
if (nextDelimiterIndex == -1) { // 如果找不到分隔符,添加剩余部分到结果
result.add(input.substring(startIndex));
break;
}
result.add(input.substring(startIndex, nextDelimiterIndex)); // 添加分割前的部分到结果
startIndex = nextDelimiterIndex + delimiter.length(); // 更新开始搜索的位置
}
return result.toArray(new String[result.size()]);
}
// 使用示例:
String input = "ab&&2";
String delimiter = "&&";
String[] array = manualSplit(input, delimiter);
```
这个例子中,我们创建了一个新的ArrayList来保存拆分的结果,通过查找分隔符的位置并逐段添加到结果列表。这种方法虽然相对简单,但效率较低,不适合大规模数据。
阅读全文