How to extract all the substrings between single quotation marks in Swift

1 Answer

0 votes
import Foundation

func extractAllSubstrings(from str: String) -> [String] {
    let regex = try! NSRegularExpression(pattern: "'([^']*)'", options: [])
    let nsString = str as NSString
    let matches = regex.matches(in: str, options: [], range: NSRange(location: 0, length: nsString.length))

    var substrings = [String]()
    for match in matches {
        let range = match.range(at: 1)
        substrings.append(nsString.substring(with: range))
    }

    return substrings
}

let str = "Swift is a 'high-level' 'general-purpose', 'compiled' programming language"

let substr = extractAllSubstrings(from: str)

for s in substr {
    print(s)
}


/*
run:

high-level
general-purpose
compiled

*/

 



answered Feb 13, 2025 by avibootz
...