有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

regexjava。每个空格将多个字串拆分为两个字串

昨晚第一轮的回答是{a1}。@Reimeus给出的解决方案非常好,并从以下方面给出了输出:

My name is the mighty llama

致:

String[] stringArray = string.split("(?<!\\G\\S+)\\s");

My name 
is the
mighty llama

然而,我现在发现自己需要纠正我正在做的事情。我实际上需要能够像这样拆分字符串

My name
name is
is the
the mighty
mighty llama

共 (2) 个答案

  1. # 1 楼答案

    不能使用String.split()复制令牌,因为正则表达式用于搜索

    如果不进行某种编辑,就无法完成此操作,也许String.replaceAll()将完成此操作

  2. # 2 楼答案

    您可以将其拆分为单个单词,并在代码中构建所需的数组

    String string = "My name is the mighty llama";
    String[] stringArray = string.split(" ");
    String[] outputArray = new String[stringArray.length - 1];
    for (int i = 0; i < stringArray.length - 1; i++) {
        outputArray[i] = stringArray[i] + " " + stringArray[i+1];
    }