import Foundation
let pattern = #"(\w+){2,}"#
let regex = try! NSRegularExpression(pattern: pattern)
let testString = ##"""
These are words
they killed a deer
$!@#abcd^#$%# 1234
(hi&)
Poproszę pieczonego ziemniaka UA-AA.
Poproszę miejsce na balkonie.
Poproszę piwo.
.Poproszę piwo, stek z frytkami i specjalną sałatkę szefa.
Poproszę czarno biały film.
Poproszę koc i poduszkę FAA:kol JF-109.
Poproszę. koc i poduszkę 45-minutoowe.
Poproszę .koc. * 1-2
Poproszę modelowanie włosów John-3:16.
Poproszę jajko na twardo, sok pomarańczowy i chleb.
, | | . , , ∩ ゚ ∀ ゚ . ━ ━ ━ ┗ 。 ◕ ‿ ‿ ◕ 。 . ↑ ? ? ? . ☆ , 。 ・ ・ ゚ ・ ・ ゚ ★ . ๏ ๏ ๏ ๏ ๏ ๏ , ๏ ๏ ๏ ๏ ๏ ๏ ♥ . ░ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ♥ ❀ ♥ ❀ ♥ ❀ ♥ █ █ ─ █ █ ▀ █ █ █ ▀ █ █ █ ▀ █ █ █ ─ █ ─ █ █ ─ █ █ ▀ █ █ █ ─ ─ █ █ ▀ █ ─ █ ▀ █ █ ▀ █ █ █ ─ █ █ █ ▀ █ █ ▀ ▌ █ ▀ █ ▌ ▀ █ ▌ █ ▀ ▀ ▌ █ ▀ ▀ ▀ ▌ █ ▀ ─ ▌ █ ─ █ ▌ ▀ █ ▌ █ ─ ─ ▌ █ ▀ ▌ █ █ ─ ▌ █ ─ ▌ █ ▌ █ █ ▌ █ ▀ ▀ ▌ █ ▀ ▀ ─ ▀ ▀ ─ ▀ ▀ ▀ ─ ─ ▀ ▀ ─ ─ ─ ▀ ▀ ─ ─ ─ ▀ ▀ ─ ▀ ─ ▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀ ▀ ─ ▀ ─ ▀ ▀ ─ ▀ ▀ ▀ ─ ▀ ▀ ▀ ▀ ▀ ▀ ▀ ░ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ♥ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ❀ ♥ ♥ ❀ ♥ ❀ ♥ D AY . ● ▬ ▬ ▬ ▬ ▬ ▬ ▬ ๑๑ ▬ ▬ ▬ ▬ ▬ ▬ ▬ ▬ ● . ● ▬ ▬ ▬ ▬ ▬ ๑๑ ▬ ▬ ▬ ▬ ▬ ▬ ● . ( - 。 - ) zzZZZ .
"""##
let stringRange = NSRange(location: 0, length: testString.utf16.count)
let matches = regex.matches(in: testString, range: stringRange)
var result: [[String]] = []
for match in matches {
var groups: [String] = []
for rangeIndex in 1 ..< match.numberOfRanges {
let nsRange = match.range(at: rangeIndex)
guard !NSEqualRanges(nsRange, NSMakeRange(NSNotFound, 0)) else { continue }
let string = (testString as NSString).substring(with: nsRange)
groups.append(string)
}
if !groups.isEmpty {
result.append(groups)
}
}
print(result)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Swift 5.2, please visit: https://developer.apple.com/documentation/foundation/nsregularexpression