[스위프트3] 외국인 번호 체크

in #swift6 years ago
     static func isForeigner(front: String, rear: String) -> Bool{
        if front.length < 6 {
            return false
        }
        if rear.length < 7 {
            return false
        }
        
        if substring(text: rear, start: 1, end: 7) == "000000"{
            return true
        }
        
        var sum = 0
        if substring(text: rear, start: 0, end: 1) != "5" &&
            substring(text: rear, start: 0, end: 1) != "6" &&
            substring(text: rear, start: 0, end: 1) != "7" &&
            substring(text: rear, start: 0, end: 1) != "8" {
            return false
        }
        if Int(substring(text: rear, start: 1, end: 3))! % 2 != 0 {
            return false;
        }
        let full: String = front + rear
        for i in 0..<12 {
            sum += Int(substring(text: full, start: i, end: i+1))! * ((i % 8) + 2)
        }
        
        if (((11 - (sum % 11)) % 10 + 2) % 10 ) == Int(substring(text: full, start: 12, end: 13)) {
            return true;
        }
        
        return false
    }

Coin Marketplace

STEEM 0.18
TRX 0.15
JST 0.029
BTC 63057.34
ETH 2546.78
USDT 1.00
SBD 2.64