I am guessing you meant this:
List(("MSC050",176484), ("MSC050",176486))
i.e a list of pairs of type (String, Int). If that's so, then the answer would be:
list.map(p => p._1.takeRight(3) + p._2)
_1 and _2 are the elements of the tuple. In this case _1 refers to the String and _2 refers to the Int
---Edit
Since you've clarified how the list looks like, then the answer would be:
list.map(_.foldLeft("")((newString, currentChar) => if(currentChar.isDigit) newString + currentChar else newString))
If what you are looking for is to preserve the digits only. FoldLeft traverses the String and at the same time it creates a new string, what I am basically telling it is that if the current char is a digit then add it to the new string, if not simply continue traversing the old string without modifying the new one.