检查Swift中的字符串是否为3个字符和3个数字

时间:2015-02-22 04:53:49

标签: ios string swift nsformatter

我正在尝试创建一个函数来验证我的字符串,如果它使用这种格式

ABC123
First three characters should be letters and the other 3 should be numbers

我不知道如何开始

由于

1 个答案:

答案 0 :(得分:1)

你可以在字符串上使用正则表达式匹配来完成它,如下所示:

    let str = "ABC123"
    let optRange = str.rangeOfString("^[A-Za-z]{3}\\d{3}$", options: .RegularExpressionSearch)
    if let range = optRange {   
        println("Matched")
    } else {
        println("Not matched")
    }

上面的正则表达式要求匹配占据整个字符串(两端都是^$个锚点),有三个字母[A-Za-z]{3}和三个数字\\d{3}。< / p>

如果您愿意,也可以将其用作扩展程序:

    extension String {
        var match: Bool {
            return rangeOfString("^[A-Za-z]{3}\\d{3}$", options: .RegularExpressionSearch) != nil
        }
    }


    "ABC123".match // true