3
我有一個字符串,我需要轉換爲「canonical」視圖,爲此我需要在string上多次調用replaceAll()。我做了它的工作方式旁邊:如何在Scala中實現string.replaceAll的鏈
val text = "Java Scala Fother Python JS C# Child"
val replacePatterns = List("Java", "Scala", "Python", "JS", "C#")
var replaced = text
for (pattern <- replacePatterns) {
replaced = replaced.replaceAll(pattern, "")
}
此代碼是導致取代=「Fother孩子」,我想,但它看起來非常必要,我想消除累加器「取代」。 在沒有var的情況下,Scala有沒有辦法在一行中處理它?
謝謝。
工程就像一個魅力,謝謝!我認爲它應該通過foldLeft,但不能確定在語法 –
沒有問題。歡迎來到Stack Overflow。 – maasg
@AndreiMarkhel順便說一句,'replaceAll'是一個相當昂貴的操作,在循環中使用。如果可能的話,嘗試找到另一種清理字符串的方法(如標記化)。 – maasg