| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import Foundation
- 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
- }
- }
|