ios - 从 Swift 中的字符串中删除字符

标签 ios iphone swift string

我有一个函数:

func IphoneName() -> String
{
    let device = UIDevice.currentDevice().name
    return device
}

返回 iPhone 的名称(简单)。我需要从最后删除 "'s Iphone"。我一直在阅读有关将其更改为 NSString 并使用范围的信息,但我有点迷路了!

最佳答案

这个怎么样:

extension String {

    func removeCharsFromEnd(count:Int) -> String{
        let stringLength = countElements(self)

        let substringIndex = (stringLength < count) ? 0 : stringLength - count

        return self.substringToIndex(advance(self.startIndex, substringIndex))
    }

    func length() -> Int {
        return countElements(self)
    }
}

测试:

var deviceName:String = "Mike's Iphone"

let newName = deviceName.removeCharsFromEnd("'s Iphone".length()) // Mike

但是,如果您想要替换方法,请使用 stringByReplacingOccurrencesOfString 作为 @Kirsteins 发布:

let newName2 = deviceName.stringByReplacingOccurrencesOfString(
     "'s Iphone", 
     withString: "", 
     options: .allZeros, // or just nil
     range: nil)

关于ios - 从 Swift 中的字符串中删除字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26254309/

相关文章:

ios - 如何使用自动布局在对象之间创建间隙

iphone - 使用父/子上下文时批量大小不起作用

Swift 3 子弹发射延迟

Swift 待办事项列表更改标签文本

ios - 线程 1 : SIGNAL SIGABRT; What do I do?

ios - 如何使用 Alamofire 创建 post 方法 cURL 请求来实现 API?

iphone - 扩展教程 Material 时 entityForName 和 ManagedObjectContext 的问题

快速数组uiimage动画

ios - Selenium iOS驱动程序(0.6.5)无法启动Safari

iphone - 页面上的 Facebook 图片上传在模拟器中正常工作但在设备中不正常