Sha256: b1d0ceeb8dd270f337e6610d3ed992a5fc944366ea26266e4460dcd6f62d0c3d
Contents?: true
Size: 967 Bytes
Versions: 71
Compression:
Stored size: 967 Bytes
Contents
struct WordCount { func splitStringToArray(_ inString: String) -> [String] { return inString.characters.split(whereSeparator: { splitAt($0) }).map {String($0)} } func splitAt(_ characterToCompare: Character, charToSplitAt: String = " !&$%^&,:") -> Bool { for each in charToSplitAt.characters { if each == characterToCompare { return true } } return false } let words: String init(words: String) { self.words = words } func count() -> [String: Int] { var dict = [String:Int]() let cleanArray = splitStringToArray(words) cleanArray.forEach { string in if !string.isEmpty { if let count = dict[string.lowercased()] { dict[string.lowercased()] = count + 1 } else { dict[string.lowercased()] = 1 } } } return dict } }
Version data entries
71 entries across 71 versions & 1 rubygems