gpt4 book ai didi

java - 如何在 charArray 中的确切位置插入空格 [Java]

转载 作者:行者123 更新时间:2023-11-29 09:52:20 25 4
gpt4 key购买 nike

我的问题是我得到一个 String 并且我需要检查从末尾开始的第 4 个位置是否有空格。如果在这个位置没有空格,我应该插入它。

例如:我得到这个字符串:TW12EF,需要这样得到它:TW1 2EF

首先,我得到一个 char 数组 中的最后 4 个字符,因为我还需要检查它们是数字还是字母。

用这个方法我检查是否有空格:

public static boolean isSpace(){
return String.valueOf(charArray[0]).matches("[ \\t\\n\\x0B\\f\\r]");
}

charArray 包含输入 String

的最后 4 个字符

如果 charArray[0] 不是空格,我想在第二位插入一个空格 (charArray[1])

如果我可以在问题中更正某些内容以使其更易于理解,请告诉我,我会尝试在下一个问题中做得更好。

最佳答案

一个简单直接的解决方案(很可能比使用正则表达式更快)是获取倒数第 4 个字符(如果它存在),如果它不是空白,则在该位置插入一个空格.

public static void main(String[] args) {
String str = "TW12EF";

int insertPos = str.length() - 4;
if (insertPos >= 0) {
char ch = str.charAt(insertPos);
if (!Character.isWhitespace(ch)) {
str = new StringBuilder(str).insert(insertPos + 1, ' ').toString();
}
}

System.out.println(str);
}

通过调用 isWhitespace 确定空格,它为空格返回 true,但也为制表符或换行符返回 true,就像您在问题中所做的那样。通过利用 StringBuilder#insert 插入字符方法,这比获取 2 个子字符串并将它们连接起来更直接。

关于java - 如何在 charArray 中的确切位置插入空格 [Java],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38868785/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com