How to replace nth character of a string with another
string, swift
Solution
Please see NateCook answer for more details
func replace(myString: String, _ index: Int, _ newChar: Character) -> String {
var chars = Array(myString.characters) // gets an array of characters
chars[index] = newChar
let modifiedString = String(chars)
return modifiedString
}
For Swift 5
func replace(myString: String, _ index: Int, _ newChar: Character) -> String {
var chars = Array(myString) // gets an array of characters
chars[index] = newChar
let modifiedString = String(chars)
return modifiedString
}
replace("House", 2, "r")
This is no longer valid and deprecated.
You can always use swift `String` with `NSString`.So you can call `NSString` function on swift `String`. By old `stringByReplacingCharactersInRange:` you can do like this
var st :String = "House"
let abc = st.bridgeToObjectiveC().stringByReplacingCharactersInRange(NSMakeRange(2,1), withString:"r") //Will give Horse
Problem
How could I replace nth character of a `String` with another one? ``` func replace(myString:String, index:Int, newCharac:Character) -> String { // Write correct code here return modifiedString } ``` For example, `replace("House", 2, "r")` should be equal to `"Horse"`.