Part II: Single-worker word count
就是自己编写mapF()
和reduceF()
.
关键是如何分割出Word, 这里的定义是:
A word is any contiguous sequence of letters, as determined by unicode.IsLetter.
下面这个分割方式可以通过测试:
tmps := strings.FieldsFunc(contents, func(ch rune) bool {
return !unicode.IsLetter(ch)
})
可通过测试. 笔者曾按空白分割字符串, 如何检查string
是否全是letter
来判断是否是字符,这样的做法会导致如下的例子被错误划分为一个单词:
"it's" // 应该被划分为 "it", "s"
"however," // "however"
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。