gpt4 book ai didi

string - 如何从 Scala 中的字符串中删除子字符串/字符?

转载 作者:行者123 更新时间:2023-12-04 10:45:48 26 4
gpt4 key购买 nike

我正在编写一个需要过滤字符串的程序。所以我有一个字符映射,我希望字符串过滤掉所有不在映射中的字符。有没有办法让我做到这一点?

假设我们有字符串和 map :

str = "ABCDABCDABCDABCDABCD"

Map('A' -> "A", 'D' -> "D")

然后我希望将字符串过滤为:
str = "BCBCBCBCBC"

另外,如果我在字符串中找到给定的子字符串,有没有办法用不同的子字符串替换它?

例如,如果我们有字符串:
"The number ten is even"

我们可以将其替换为:
"The number 10 is even"

最佳答案

用 map 过滤字符串只是一个过滤命令:

val str = "ABCDABCDABCDABCDABCD"
val m = Map('A' -> "A", 'D' -> "D")

str.filterNot(elem => m.contains(elem))

评论中推荐的更实用的替代方案
str.filterNot(m.contains)

输出
scala> str.filterNot(elem => m.contains(elem))
res3: String = BCBCBCBCBC

替换字符串中的元素:
string.replace("ten", "10")

输出
scala> val s  = "The number ten is even"
s: String = The number ten is even

scala> s.replace("ten", "10")
res4: String = The number 10 is even

关于string - 如何从 Scala 中的字符串中删除子字符串/字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59714199/

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