import Foundation
let pattern = #"[^\r\n]+(?:\r?\n(?!\s*[a-z][)])[^\r\n]*)*"#
let regex = try! NSRegularExpression(pattern: pattern)
let testString = #"""
Os Embargos de Terceiros fazem parte do procedimento especial, previsto no Código de Processo Civil, sendo possível sua utilização por quem, não sendo parte no processo, sofre constrição ou sofre ameaça de constrição sobre bens que possua ou sobre os quais tenha direito incompatível com o ato constritivo. Sobre o ajuizamento dos embargos, assinale a alternativa INCORRETA.
Considere o segmento “[...] o Estado só percebe o eco enfraquecido.†(2º§). Pode-se afirmar que a partir do recurso de linguagem utilizado pelo enunciador na escolha da palavra “Estadoâ€, identifica-se 7
a) o estabelecimento de uma comparação entre “Estado†e “governantesâ€.
b) o emprego de uma palavra redundante objetivando reforçar a ideia expressa.
questões que irão ter várias quebra de linhas
questões que irão ter várias quebra de linhas
c) uma transferência de percepções resultando em uma fusão de impressões sensoriais.
d) a evocação de um termo em lugar de uma palavra, com a qual se acha relacionada não sendo sinônimos.
"""#
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