swift 用于正则表达式的Swift实用程序类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift 用于正则表达式的Swift实用程序类相关的知识,希望对你有一定的参考价值。

import Foundation

class Regexp {
    let internalRegexp: NSRegularExpression
    let pattern: String
    
    init(_ pattern: String) {
        self.pattern = pattern
        var error: NSError?
        self.internalRegexp = NSRegularExpression( pattern: pattern, options: NSRegularExpressionOptions.CaseInsensitive, error: &error)!
    }
    
    func isMatch(input: String) -> Bool {
        let matches = self.internalRegexp.matchesInString( input, options: nil, range:NSMakeRange(0, count(input)) )
        return matches.count > 0
    }
    
    func matches(input: String) -> [String]? {
        if self.isMatch(input) {
            let matches = self.internalRegexp.matchesInString( input, options: nil, range:NSMakeRange(0, count(input)) )
            var results: [String] = []
            for i in 0 ..< matches.count {
                results.append( (input as NSString).substringWithRange(matches[i].range) )
            }
            return results
        }
        return nil
    }
}

以上是关于swift 用于正则表达式的Swift实用程序类的主要内容,如果未能解决你的问题,请参考以下文章

用于在 Swift 中为 UITextField 验证 Civil ID 的正则表达式 [重复]

swift Token实用程序用于遗忘语言

Regex 正则表达式中几个符号([ ] ^ ?: ?= ?!)的概念

swift swift中的正则表达式扩展

swift Swift提取正则表达式匹配

swift 允许正则表达式在swift中扩展