1

I'm trying to create a function that validate my string if it is using this format

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

I have no idea on how to start

Thanks

4

1 回答 1

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}

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

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


    "ABC123".match // true
于 2015-02-22T05:00:37.050 回答