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

Version Path
trackler-2.0.6.15 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.14 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.13 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.12 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.11 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.10 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.9 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.8 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.7 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.6 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.5 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.4 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.3 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.2 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.1 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.6.0 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.5.18 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.5.17 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.5.16 tracks/swift/exercises/word-count/WordCountExample.swift
trackler-2.0.5.15 tracks/swift/exercises/word-count/WordCountExample.swift