平时在使用办公软件Microsoft Word中文版时,如果按住Ctrl键,再按左右方向键,那么光标会以词为单位左右移动。由此可知,Word中文版内部已将中文文本进行分词。
基于这个事实,采用Word VBA编写宏,实现中文分词。
查看Word VBA帮助文件,经过长时间的搜寻,终于发现,Words集合返回指定区域内的所有词。因此,只要想办法将这个集合中的所有元素提取出来,再放到新建的文档中,就可以完成中文分词。
代码如下:
Sub Fenci()
Set myRange = ActiveDocument.Range(Start:=0, End:=Selection.End)
Documents.Add
For Each aWord In myRange.Words
Selection.TypeText Text:=aWord & " "
Next aWord
End Sub
例如,对多语种日常用语平行语料中的中文部分:
将光标移动到文档的末尾,运行这个宏,得到如下结果:
这个宏实现了中文分词。