|
//
// StringExt.swift
// PaiaiDataKit
//
// Created by FFIB on 2017/9/20.
// Copyright © 2017年 FFIB. All rights reserved.
//
import Foundation
// MARK: regular expression
extension String {
public var isPhoneNumber: Bool {
let pattern = "^1+[3578]+\\d{9}"
return regularExpression(pattern: pattern)
}
public var isIPAdress: Bool {
let pattern = "/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/"
return regularExpression(pattern: pattern)
}
public var isHex: Bool {
let pattern = "/^#?([a-f0-9]{6}|[a-f0-9]{3})$/"
return regularExpression(pattern: pattern)
}
public var isEmail: Bool {
let pattern = "^([a-z0-9_\\.-]+)@([\\da-z\\.-]+)\\.([a-z\\.]{2,6})$"
return regularExpression(pattern: pattern)
}
public func regularExpression(pattern: String) -> Bool {
let matcher: NSRegularExpression
do {
matcher = try NSRegularExpression.init(pattern: pattern, options: .caseInsensitive)
} catch {
return false
}
return matcher.matches(in: self, options: [], range: NSRange(location: 0, length: count)).count > 0
}
}
|