ios - 快速替换索引处的字符串值
问题描述
我正在尝试添加一个删除从文本输入中获取的字符串的第一个字符并将其替换为另一个字符,但新字符串会替换每个具有的值,0
而不仅仅是初始数字。下面是我尝试过的代码
let swiftyString = phoneNumberField.text?.replacingOccurrences(of: "0", with: "44")
print("STRING \(swiftyString!)")
解决方案
使用insert(_,at:)
代替replacingOccurrences
if var phone = phoneNumberField.text?.dropFirst() {
phone.insert("44", at: phone.startIndex)
}
要替换第 N 个字符:
extension String {
func replace(_ with: String, at index: Int) -> String {
var modifiedString = String()
for (i, char) in self.enumerated() {
modifiedString += String((i == index) ? with : String(char))
}
return modifiedString
}
}
利用:
let string = "wqrtyry"
let dd = string.replace("R", at: 2)
print(dd)
推荐阅读
- flask - Flask WTForms:为什么我上传文件的 POST 请求没有发送文件数据?
- reactjs - react-router - 无法在 this.props.location 中获取信息
- javascript - 为什么 event.preventDefault() 能够阻止子元素的默认浏览器行为?
- c# - 便携库 ObservableCollection 绑定错误
- python - 有没有更好(更有效)的方法从元组中删除项目?
- javascript - 使用 javascript 提取所有 css 选择器
- html - 如何覆盖嵌套 HTML 文档中的 CSS?
- c++ - 卡住 LNK1328:缺少字符串表
- angular - 更新服务值时在组件上运行功能(Angular 6)
- angular - 角度 7.0 pwa 服务人员未加载 css 文件