Avatar ·

在 Swift 中提取正则表达式匹配

```html 大家好!我是 Swift 新手,正在尝试使用正则表达式从字符串中提取数据。我有一个字符串:"Привет, меня зовут Иван, мне 25 лет, я живу в Москве"。我想分别提取姓名、年龄和城市。在其他语言(如 Python)中,我使用 `re.findall()`,但在 Swift 中完全不同。 我尝试过使用 `NSRegularExpression`,但搞糊涂了。这是我的代码: ```swift let text = "Привет, меня зовут Иван, мне 25 лет, я живу в Москве" let pattern = "Иван|25|Москва" let regex = try? NSRegularExpression(pattern: pattern) let matches = regex?.matches(in: text, range: NSRange(location: 0, length: text.utf16.count)) for match in matches ?? [] { print((text as NSString).substring(with: match.range)) } ``` 这能工作,但前提是我硬编码了值。而我需要动态提取数据:姓名("зовут" 后的任意单词)、年龄("мне" 后的任意数字)、城市("в" 后的任意单词)。我尝试过编写带捕获组的模式,例如 ```