Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //: Playground - noun: a place where people can play
- import UIKit
- var result = "Olá {{51:Daniel S. Debastiani}} como vai? {{1:João Reichert}}"
- var patt = "\\{{2}?([\\d]+):([\\s\\S][^\\{]+)\\}{2}"
- var dictNames = [String:String]()
- func matchesForRegexInText(regex: String!, text: String!, dictNameId: [String:String]) -> (fullString:String, dictId:[String:String]){
- var stringFormated = text
- var dict = dictNameId
- let regex = NSRegularExpression(pattern: regex, options: nil, error: nil)!
- let nsString = stringFormated as NSString
- let results = regex.matchesInString(stringFormated,options: nil, range: NSMakeRange(0, count(text.utf16))) as! [NSTextCheckingResult]
- for match in results as [NSTextCheckingResult] {
- // range at index 0: full match
- // range at index 1: first capture group
- // range at index 2: second capture group
- let results2 = regex.matchesInString(stringFormated, options: nil, range: NSMakeRange(0, count(stringFormated.utf16))) as! [NSTextCheckingResult]
- let match1 = results2.first!
- println()
- let substring0 = (stringFormated as NSString).substringWithRange(match1.rangeAtIndex(0))
- println(substring0)
- let substring1 = (stringFormated as NSString).substringWithRange(match1.rangeAtIndex(1))
- println(substring1)
- let substring2 = (stringFormated as NSString).substringWithRange(match1.rangeAtIndex(2))
- println(substring2)
- //dict[substring1] = substring2
- println(stringFormated)
- println(match1.rangeAtIndex(0))
- stringFormated = (stringFormated as NSString).stringByReplacingCharactersInRange(match1.rangeAtIndex(0), withString: substring2)
- println(stringFormated)
- println()
- }
- return (stringFormated, dict)
- }
- var format = matchesForRegexInText(patt, result, dictNames)
- dictNames = format.dictId
- var string = format.fullString
- //println(dictNames)
- //println()
- //println(string)
Add Comment
Please, Sign In to add comment