//
// GARegular.swift
// OnlyWeather
//
// Created by houjianan on 2017/3/10.
// Copyright © 2017年 houjianan. All rights reserved.
//
import Foundation
enum Regular: String {
//用户名验证(允许使用小写字母、数字、下滑线、横杠,一共3~16个字符)
case userName = "^[a-z0-9_-]{3,16}$",
eMail = "^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$",
phone = "^1[0-9]{10}$",
url = "^(https?://)?([da-z.-]+).([a-z.]{2,6})([/w.-]*)*/?$",
ip = "^(?:(?: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]?)$",
html = "^<([a-z]+)([^<]+)*(?:>(.*)</1>|s+/>)$",
pureNumber = "^[0-9]*$",
none = ""
}
class GARegular {
/*
input: 需要判定的字符串
regular: 正则表达式
regularEnum: 用户名、email、手机号、链接地址、ip、html、纯数字
*/
class func match(_ input: String, regular: String = "", regularEnum: Regular = .none) -> Bool {
let regular = regularEnum == .none ? regular : regularEnum.rawValue
let regex = try? NSRegularExpression(pattern: regular, options: .caseInsensitive)
if let matches = regex?.matches(in: input, options: [], range: NSMakeRange(0, input.characters.count)) {
return matches.count > 0
} else {
return false
}
}
}
swift - 正则表达(用户名、email、手机号、链接地址、ip、html、纯数字)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- http://www.lovebxm.com/2017/05/31/RegExp/
- 摘自:http://www.lovebxm.com/2017/05/31/RegExp/详细说明请点击上面url~...