当前位置:  开发笔记 > IOS > 正文

如何检查文本是否只包含数字?

如何解决《如何检查文本是否只包含数字?》经验,为你挑选了2个好方法。

我尝试了很多案例,但没有人适合我.我试过了:

if resultTitles[indexPath.row].rangeOfCharacterFromSet(badCharacters) == nil {
    let badCharacters = NSCharacterSet.decimalDigitCharacterSet().invertedSet
    print("Index: \(indexPath.row)")
}

也试过

if ((resultTitles[0].toInt()) != nil) {
    print("ERROR")
}

那么,我该怎么检查,我的文字只包含数字?



1> Cristina De ..:

我发现在Swift 3中这个解决方案更清洁

import Foundation

CharacterSet.decimalDigits.isSuperset(of: CharacterSet(charactersIn: yourString))



2> Luca Angelet..:

你只需要检查是否Set你的角色String子集Set包含字符从0到9.

extension String {
    var isNumeric: Bool {
        guard self.characters.count > 0 else { return false }
        let nums: Set = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]
        return Set(self.characters).isSubset(of: nums)
    }
}

"".isNumeric // false
"No numbers here".isNumeric // false
"123".isNumeric // true
"Hello world 123".isNumeric // false

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有