类型CharacterSet的值没有成员InvertedSet-Swift 3
我正在尝试将swift 2代码转换为swift 3:类型CharacterSet的值没有成员InvertedSet-Swift 3,swift,nscharacterset,Swift,Nscharacterset,我正在尝试将swift 2代码转换为swift 3: var customAllowedSet = NSCharacterSet(charactersInString:"=\"#%/<>?@\\^`{|}").invertedSet 根据Swift 3中invertedSet方法的名称,将其更改为just inverted。所以试试这个: var customAllowedSet = CharacterSet(charactersIn:"=\"#%/<>?@\\^`
var customAllowedSet = NSCharacterSet(charactersInString:"=\"#%/<>?@\\^`{|}").invertedSet
根据Swift 3中invertedSet方法的名称,将其更改为just inverted。所以试试这个:
var customAllowedSet = CharacterSet(charactersIn:"=\"#%/<>?@\\^`{|}").inverted
PS:InitCharactersString:of CharacterSet也更改为initcharactersIn:根据Swift 3中invertedSet方法的名称,已更改为just Inversed。所以试试这个:
var customAllowedSet = CharacterSet(charactersIn:"=\"#%/<>?@\\^`{|}").inverted
PS:InitCharactersString:of CharacterSet也更改为initcharactersIn:在Swift 3中,您还应该删除NS前缀。您应该使用CharacterSet而不是NSCharacterSet。您还应该将其声明为常量
let customAllowedSet = CharacterSet(charactersIn: "=\"#%/<>?@\\^`{|}").inverted
您还可以将其声明为静态属性扩展CharacterSet,如下所示:
extension CharacterSet {
static let customAllowedSet = CharacterSet(charactersIn:"=\"#%/<>?@\\^`{|}").inverted
}
CharacterSet.customAllowedSet
在Swift 3中,您还应该删除NS前缀。您应该使用CharacterSet而不是NSCharacterSet。您还应该将其声明为常量
let customAllowedSet = CharacterSet(charactersIn: "=\"#%/<>?@\\^`{|}").inverted
您还可以将其声明为静态属性扩展CharacterSet,如下所示:
extension CharacterSet {
static let customAllowedSet = CharacterSet(charactersIn:"=\"#%/<>?@\\^`{|}").inverted
}
CharacterSet.customAllowedSet
实际上你可以同时使用NSCharacterSet和CharacterSet,看:我从来没说过他不能。我说他应该这么做。是的,但如果没有详细的上下文,他在哪里使用它,你就不能说你应该为什么要使用NSCharacterSet?:当你需要引用语义或其他特定于基金会的行为时。实际上你可以同时使用NSCharacterSet和CharacterSet,看:我从来没说过他不能。我说他应该这么做。是的,但如果没有详细的上下文,他在哪里使用它,你就不能说你应该为什么要使用NSCharacterSet?:当你需要引用语义或其他特定于基金会的行为时。lolEditor->Convert->转换为当前Swift语法。。。自动为您修复此问题。编辑器->转换->到当前Swift语法。。。自动为您修复问题。