gpt4 book ai didi

java - 查找字符串数组中最短的单词

转载 作者:行者123 更新时间:2023-12-02 02:17:33 24 4
gpt4 key购买 nike

我试图从字符串数组中找到最短的单词,但我正在使用 reg ex 和代码删除特殊字符

public String[] setWordArray(String stringToBeAnaylsedForFrequency) {
stringToBeAnaylsedForFrequency = stringToBeAnaylsedForFrequency.replaceAll("\\d+", " ");
stringToBeAnaylsedForFrequency = stringToBeAnaylsedForFrequency.replaceAll("\\W", " ");
stringToBeAnaylsedForFrequency = stringToBeAnaylsedForFrequency.replaceAll("( )+ ", " ");
String[] wordArray = stringToBeAnaylsedForFrequency.split(" ");
return wordArray;
}

这是使用方法

public String getShortestWordInStringGiven() {
int wordArrayLength = getStringArrayForGivenString().length;
String shortestWordInGivenString = getStringArrayForGivenString()[0];
for (int i = 1; i < wordArrayLength ; i++) {
if (getStringArrayForGivenString()[i].length() < shortestWordInGivenString.length()) {
shortestWordInGivenString = getStringArrayForGivenString()[i];
}
}
return shortestWordInGivenString;
}

当它工作正常时,我输入像“你好,你”这样的文本,它会返回“你”作为最短的字符,但是当我在开头输入带有特殊字符的“你好,你”时,它不会返回任何内容。

最佳答案

回答你的评论:当你在开头有一个空格时,split将在开头多一个元素,一个空字符串。该元素是数组中最短的元素(检查数组的长度),但打印它并没有显示任何可见的元素。但是,请放心,会打印正确的元素:它是 ""

您可能需要在分割操作之前修剪字符串

关于java - 查找字符串数组中最短的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49071735/

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