[英]How do I remove a substring/character from a string in Scala?
我正在編寫一個需要過濾字符串的程序。 所以我有一個字符映射,我希望字符串過濾掉所有不在映射中的字符。 有沒有辦法讓我做到這一點?
假設我們有字符串和地圖:
str = "ABCDABCDABCDABCDABCD"
Map('A' -> "A", 'D' -> "D")
然后我希望將字符串過濾為:
str = "BCBCBCBCBC"
另外,如果我在字符串中找到給定的子字符串,有沒有辦法用不同的子字符串替換它?
例如,如果我們有字符串:
"The number ten is even"
我們可以將其替換為:
"The number 10 is even"
用地圖過濾字符串只是一個過濾命令:
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.