为什么此RegExp会产生意外结果?

时间:2018-11-01 18:43:30

标签: python regex

正则表达式:

func save() {
    do {
        try self.managedObjectContext.save()
    }
    catch {
        let nserror = error as NSError
        NSLog("Whoops! \(nserror), \(nserror.userInfo)")
    }
}

返回

re.findall(r"set(Value)?","set Value setValue setds")

正则表达式:

['', 'Value', '']

返回

re.findall(r"set(?:Value)?","set Value setValue setds")

有人可以解释这种行为吗?我期望第一个正则表达式返回第二个结果。第二个正则表达式返回 ['set', 'setValue', 'set']

0 个答案:

没有答案