1
我正在嘗試編寫一個slugging函數,它涉及除去連字符之外的任何標點符號。我認爲這樣做是創建一個新的CharacterSet
如下的最佳方式:創建一個新的CharacterSet時出現EXC BAD ACCESS
import Foundation
extension CharacterSet {
func subtracting(charactersIn string: String) -> CharacterSet {
let unwantedCharacters = CharacterSet(charactersIn: string)
return self.subtracting(unwantedCharacters)
}
}
let punctuationCharactersExcludingHyphen = CharacterSet.punctuationCharacters.subtracting(charactersIn: "-")
<#slug function using punctuationCharactersExcludingHyphen#>
其中slug function
是,我已經與現有的字符集測試的功能。問題是分配let punctuationCharactersExcludingHyphen...
與EXC_BAD_ACCESS code=2
崩潰。
我注意到涉及這個錯誤的大多數問題都是由一些特定的語法錯誤或類似的引起的,但我無法找到它在這裏。有任何想法嗎?
這個錯誤是https://bugs.swift.org/browse/SR-2503,已經在Foundation中修復:https://github.com/apple/swift/pull/5201,Corelibs-foundation即將發佈修復:https://github.com/apple/swift-corelibs-foundation/pull/680 – jtbandes