Avatar ·

Extraktion von Regex-Übereinstimmungen in Swift

Hallo zusammen! Ich bin neu in Swift und versuche, Daten aus einem String mit regulären Ausdrücken zu extrahieren. Ich habe einen String wie: "Hallo, ich heiße Ivan, ich bin 25 Jahre alt, ich lebe in Moskau". Ich möchte den Namen, das Alter und die Stadt separat extrahieren. In anderen Sprachen (z. B. Python) habe ich `re.findall()` verwendet, aber in Swift ist alles anders.\n\nIch habe versucht, `NSRegularExpression` zu verwenden, aber ich bin verwirrt. Hier ist mein Code:\n\n```swift\nlet text = "Hallo, ich heiße Ivan, ich bin 25 Jahre alt, ich lebe in Moskau"\nlet pattern = "Ivan|25|Moskau"\nlet regex = try? NSRegularExpression(pattern: pattern)\nlet matches = regex?.matches(in: text, range: NSRange(location: 0, length: text.utf16.count))\nfor match in matches ?? [] {\n print((text as NSString).substring(with: match.range))\n}\n```\n\nDas funktioniert, aber nur wenn ich die Werte fest codiere.