从Kotlin中另一个字符串中出现的字符串中删除字符

时间:2017-06-13 05:41:16

标签: python string kotlin

让我先说一下我对Kotlin很新,但对Python有点熟悉。

我的目标是通过某种功能从一个字符串中删除所有出现的字符。

我可以告诉你如何用Python做到这一点:

def removechars (s, chars)
    return s.translate(None, chars)

我可以这样使用它:

print(removechars("The quick brown fox jumped over the sleazy dog!", "qot"))

它会给出这个输出:

The uick brwn fx jumped ver the sleazy dg!     

我怎么能在Kotlin做类似的事情?

3 个答案:

答案 0 :(得分:4)

我建议在Kotlin中使用filterNot()

"Mississippi".filterNot { c -> "is".contains(c)}

这应输出"Mpp"

答案 1 :(得分:3)

您可以使用Regex(Python中的等效模块为re):

fun removeChars(s: String, c: String) = s.replace(Regex("[$c]"), "")

println(removeChars("The quick brown fox jumped over the sleazy dog!", "qot"))

<强>输出:

The uick brwn fx jumped ver he sleazy dg!

答案 2 :(得分:0)

我不熟悉Kotlin,但我会声明字符串和字符变量。然后执行 For ... Next 语句,然后依次为要删除的每个字母分配字符,并在更改后的字符串中搜索字母。

它可能不是最有效的方法,但是如果您对运行时间的这种轻微延迟感到满意,它应该可行。