swift中的正则表达式小结讲义.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
swift中的正则表达式小结 swift中的正则表达式小结正则表达式是对字符串操作的一种逻辑公式,用事先定义好的一些特定字符、及这些特定字符的组合,组成一个规则字符串,这个规则字符串用来表达对字符串的一种过滤逻辑。 作为一门先进的编程语言,Swift 可以说吸收了众多其他先进语言的优点,但是有一点却是让人略微失望的,就是 Swift 至今为止并没有在语言层面上支持正则表达式。 正则表达式的用处: 判断给定的字符串是否符合某一种规则(专门用于操作字符串) - 电话号码,电子邮箱,URL... - 可以直接百度别人写好的正则 - 别人真的写好了,而且测试过了,我们可以直接用 - 要写出没有漏洞正则判断,需要大量的测试,通常最终结果非常负责 过滤筛选字符串,网络爬虫 替换文字,QQ聊天,图文混排 语法规则 使用过程 1、创建规则 2、创建正则表达式对象 3、开始匹配 代码示例 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 private func check(str: String) { // 使用正则表达式一定要加try语句 do { // - 1、创建规则 let pattern = [1-9][0-9]{4,14} // - 2、创建正则表达式对象 let regex = try NSRegularExpression(pattern: pattern, options: NSRegularExpressionOptions.CaseInsensitive) // - 3、开始匹配 let res = regex.matchesInString(str, options: NSMatchingOptions(rawValue: 0), range: NSMakeRange(0, str.characters.count)) // 输出结果 for checkingRes in res { print((str as NSString).substringWithRange(checkingRes.range)) } } catch { print(error) } } 其他几个常用方法 ? 1 2 3 4 5 6 7 8 9 10 // 匹配字符串中所有的符合规则的字符串, 返回匹配到的NSTextCheckingResult数组 public func matchesInString(string: String, options: NSMatchingOptions, range: NSRange) - [NSTextCheckingResult] // 按照规则匹配字符串, 返回匹配到的个数 public func numberOfMatchesInString(string: String, options: NSMatchingOptions, range: NSRange) - Int // 按照规则匹配字符串, 返回第一个匹配到的字符串的NSTextCheckingResult public func firstMatchInString(string: String, options: NSMatchingOptions, range: NSRange) - NSTextCheckingResult? // 按照规则匹配字符串, 返回第一个匹配到的字符串的范围 public func rangeOfFirstMatchInString(string: String, options: NSMatchingOptions, range: NSRange) - NSRange 使用子类来匹配日期、地址、和URL 看官网文档解释,可以知道这个 NSDataDetector 主要用来匹配日期、地址、和URL。在使用时指定要匹配的类型 ? 1 2 3 4 5 6 7 8 9 10 11 public class NSDataDetector : NSRegularExpression { // all instance variables are private /* NSDataDetector is a specialized subclass of NSRegularExpression. Instead of finding matches to regular expression patterns, it matches items identified by Data Detectors, such as dates, addresses, and URLs. The checkingTypes argument should contain

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档