swift - 从字符串中获取数字字符

标签 swift swift3

<分区>

如何从字符串中获取数字字符?我不想在 Int 中进行转换。

var string = "string_1"
var string2 = "string_20_certified"

我的结果必须像这样格式化:

newString = "1"
newString2 = "20"

最佳答案

编辑:针对 Swift 4 和 5 更新

这是一个不需要基础的简单方法:

let newstring = string.filter { "0"..."9" ~= $0 }

或借鉴@dfri 的想法使其成为String 扩展:

extension String {
    var numbers: String {
        return filter { "0"..."9" ~= $0 }
    }
}

print("3 little pigs".numbers) // "3"
print("1, 2, and 3".numbers)   // "123"

关于swift - 从字符串中获取数字字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41188101/

相关文章:

swift - 快速更改UITabBar中 “More” UINavigationController的背景颜色

swift - NSCollectionView - 自定义 View 项未连接或不会选择

ios - Firebase 注册 token 无效。检查 token 格式

ios - 如何在 Swift 3 的子类中覆盖 Init()

objective-c - 带有通用参数的Objective-C类方法无法在Swift中调用

ios - Swift - 大标题和搜索栏

ios - 类 'ProductDetailViewController' 没有初始化器

ios - Swift WebView - 无连接模式

swift - 在 Swift 中创建带有索引的对象名称

ios - 将 UIViewController 添加到 UIScrollView swift 3