gpt4 book ai didi

string - 在Scala中删除以大写字符开头的字符串的单词

转载 作者:行者123 更新时间:2023-12-01 09:51:25 24 4
gpt4 key购买 nike

我想编写一个算法,删除字符串中以大写字符开头的每个单词。

例如:

原始字符串:“今天是 29 日星期五。”

期望的结果:“是 29 号。”

这个算法我写了,但是不完整:

def removeUpperCaseChars(str: String) = {
for (i <- 0 to str.length - 1) {
if (str.charAt(i).isUpper) {
var j = i
var cont = i
while (str.charAt(j) != " ") {
cont += 1
}
val subStr = str.substring(0, i) + str.substring(cont, str.length - 1)
println(subStr)
}
}
}

它(据说)删除了每个带有大写字符的单词,而不是只删除以大写字符开头的单词。更糟糕的是,Scala 没有给出任何结果。

谁能帮我解决这个问题?

最佳答案

有一些假设,就像单词总是用空格分开,你可以这样实现:

scala> "Today is Friday the 29Th.".split("\\s+").filterNot(_.head.isUpper).mkString(" ")
res2: String = is the 29Th.

我们真的不想像在 scala 中那样编写算法。这是您在 C 中执行此操作的一种方式。

关于string - 在Scala中删除以大写字符开头的字符串的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36940975/

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