//
// 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~...