尝试通过传入参数拆分字符串时出错。
示例运行。
./create-events-from-dvd-contents.swift --path /Volumes/ARCHIVE/DVD\ 1255/2451-01_LLA_Assets\ Folder\ Nov\ 2015/ --root-prefix DVD --job-meta-data-delimiter _
./create-events-from-dvd-contents.swift:72:69: error: cannot convert value of type '(String) -> Bool' to expected argument type '_Element' (aka 'Character')
let jobMetaDataArray: Array<String> = jobFolder_.characters.split {$0 == delimiter}.map { String($0) } ;
功能:
func setJobNumberClientCodeAndJobTitleFromJobFolderGivenDelimiter( jobFolder_: String, delimiter_: String ) {
let jobMetaDataArray: Array<String> = jobFolder_.characters.split {$0 == delimiter_}.map { String($0) } ;
/*
...
*/
}
如果我对参数进行硬编码,那么它就能正常工作。
示例:
func setJobNumberClientCodeAndJobTitleFromJobFolderGivenDelimiter(jobFolder_:String,delimiter_:String){
let jobMetaDataArray: Array<String> = jobFolder_.characters.split {$0 == "_"}.map { String($0) } ;
/*
...
*/
}
将字符串分隔符传递给textString.characters.split的最佳方法是什么?
答案 0 :(得分:0)
简单的答案是使用不同的功能。
func setJobNumberClientCodeAndJobTitleFromJobFolderGivenDelimiter( jobFolder_: String, delimiter_: String ) {
let jobMetaDataArray: Array<String> = jobFolder_.componentsSeparatedByString(delimiter_) ;
/*
...
*/
}