当前位置: 首页 > 面试题库 >

我想在不使用拆分功能的情况下拆分字符串吗?

萧丁雨
2023-03-14
问题内容

我想在不使用split的情况下拆分字符串。任何人都可以解决我遇到的问题,但是我找不到确切的逻辑。


问题答案:

我将假定这是家庭作业,因此我仅给出一些片段作为提示:

查找给定子串的所有出现的索引

这是一个indexOffromIndex参数一起使用以查找较大字符串中所有出现的子字符串的示例:

String text = "012ab567ab0123ab";

// finding all occurrences forward: Method #1
for (int i = text.indexOf("ab"); i != -1; i = text.indexOf("ab", i+1)) {
    System.out.println(i);
} // prints "3", "8", "14"

// finding all occurrences forward: Method #2
for (int i = -1; (i = text.indexOf("ab", i+1)) != -1; ) {
    System.out.println(i);
} // prints "3", "8", "14"

字符串API链接

  • int indexOf(String, int fromIndex)
    • 从指定的索引开始,返回指定子字符串首次出现在该字符串中的索引。如果不存在这种情况,则返回-1。

相关问题

  • 在另一个字符串中搜索一个字符串

从字符串中提取给定索引的子字符串

代码substring从字符串中提取给定索引,并将其放入List<String>

String text = "0123456789abcdefghij";

List<String> parts = new ArrayList<String>();
parts.add(text.substring(0, 5));
parts.add(text.substring(3, 7));
parts.add(text.substring(9, 13));
parts.add(text.substring(18, 20));

System.out.println(parts); // prints "[01234, 3456, 9abc, ij]"

String[] partsArray = parts.toArray(new String[0]);

一些关键思想:

  • 有效的Java 2nd Edition,项目25:首选列表而不是数组
    • 如果您不知道会有多少个部件,效果特别好

字符串API链接

  • String substring(int beginIndex, int endIndex)
    • 返回一个新字符串,该字符串是该字符串的子字符串。子字符串从指定的字符串开始,beginIndex并扩展到index的字符endIndex - 1


 类似资料:
  • 问题 你想拆分一个字符串。 解决方案 使用 JavaScript 字符串的 split() 方法: "foo bar baz".split " " # => [ 'foo', 'bar', 'baz' ] 讨论 String 的这个 split() 方法是标准的 JavaScript 方法。可以用来基于任何分隔符——包括正则表达式来拆分字符串。这个方法还可以接受第二个参数,用于指定返回的子字符串数

  • 问题内容: 这是我的应用程序中的当前代码: 在对应用程序进行性能分析时,我注意到用于拆分字符串的时间不可忽略。 我还了解到,实际上需要一个正则表达式,这对我来说毫无用处。 所以我的问题是, 我可以使用哪种替代方法来优化字符串拆分? 我见过,但是速度更快吗? (我会尝试并测试自己,但是对我的应用程序进行性能分析需要花费很多时间,因此,如果有人已经知道答案,那么可以节省一些时间) 问题答案: 如果您的

  • 我希望我的字符串使用“,”(逗号),但我的字符串有一些特殊情况请帮助我 输出:<代码>myarray[0]=a,myarray[1]=d,myarray[3]=e,MyArArray[4]=f….. 所需输出 : 请帮帮我……谢谢

  • Java官方文档说明: 例如,字符串使用以下表达式Regex Result生成以下结果: 这就是我需要它工作的方式。然而,如果我运行这个: 它打印: 这与我的预期相去甚远: 为什么会这样?

  • 问题内容: 我有一个名为的字符串,其形式像这样 。 我想使用:分隔符。 这样一来,单词将被拆分成自己的字符串,并将成为另一个字符串。 然后我只想使用2种不同的字符串来显示该字符串。 解决这个问题的最佳方法是什么? 问题答案: 你可能要删除第二个字符串的空格: 如果要用特殊字符(例如dot(。))分割字符串,则应在点之前使用转义字符\ 例: 还有其他方法可以做到这一点。例如,你可以使用类(来自):