ROSTCM6

1. http://www.writewords.org.uk/word_count.asp
2. http://darylkinsman.ca/tools/wordfreq.shtml
3. http://www.wordcounter.com/

VBA macro of    word

Sub ChineseCharCounting()
        '统计汉字的字词频,并按降序排序
        '中文词语的判断与Word的词典关联
        Dim a As Byte
        Dim n As Long
        Dim TF As Boolean
        Dim filetext As String
        Dim d
        Dim Wd As Range
        Dim W As Range
        Dim b
        Dim e As Long
        Dim c() As String
        Dim i As Long
        Dim temp As String
        Dim st As Single
       
        a = MsgBox("词频统计请按“是”,字频统计请按“否”", vbYesNo, "中文字词频统计")
        st = Timer
        Application.ScreenUpdating = False
        n = ActiveDocument.Content.ComputeStatistics(wdStatisticFarEastCharacters)
        If ActiveDocument.Content.Text Like "*[【】〖〗《》〈〉〔〕]*" Then TF = True
        With ActiveDocument.Content.Find
            .Text = "[【】〖〗《》〈〉〔〕]"
            .MatchWildcards = True
            .Execute Replace:=wdReplaceAll
        End With
        Set d = CreateObject("Scripting.Dictionary")
        If a = vbYes Then
            For Each Wd In ActiveDocument.Words
                With Wd
                    If .Start < e Then .Start = e
                    e = .End
                    If .Text Like "*[一-龥]*" And Len(.Text) > 1 Then
                        If .Text Like "*[!一-龥]*" = False And .Words.Count = 1 Then
                            d(.Text) = d(.Text) + 1
                        Else
                            For i = 1 To Len(.Text)
                                If Mid(.Text, i, 1) Like "[!一-龥]" Then Exit For
                            Next
                            With .Duplicate
                                .End = .Start + i - 1
                                For Each W In .Words
                                    With W
                                        If Len(.Text) > 1 Then
                                            If Right(.Text, 1) Like "[!一-龥]" Then .End = .End - 1
                                            If .Text Like "*[!一-龥]*" = False Then d(.Text) = d(.Text) + 1
                                        End If
                                    End With
                                Next
                            End With
                        End If
                    End If
                End With
            Next
        Else
            filetext = ActiveDocument.Content.Text
            For i = 1 To Len(filetext)
                temp = Mid(filetext, i, 1)
                If temp Like "[一-龥]" Then d(temp) = d(temp) + 1
            Next
        End If
        b = d.keys
        ReDim c(UBound(b))
        For i = 0 To UBound(b)
            c(i) = b(i) & vbTab & d(b(i))
        Next
        If TF = True Then ActiveDocument.Undo 1
       
        With Documents.Add.Content
            .Text = "文档共有" & n & "个中文字符。共提取到" & d.Count _
                & IIf(a = 6, "个中文词语", "个不同的汉字") & ",其出现次数分别为:" & vbCrLf & Join(c, vbCrLf)
            .Parent.DefaultTabStop = .Characters.First.Font.Size * 6
            .MoveStart wdParagraph
            .Sort , 2, wdSortFieldNumeric, wdSortOrderDescending, 1, , , , , , wdSortSeparateByTabs
        End With
        MsgBox "提取完毕。用时" & Format(Timer - st, "0") & "秒。"
        Application.ScreenUpdating = True
    End Sub

词频统计 in office的更多相关文章

  1. python瓦登尔湖词频统计

    #瓦登尔湖词频统计: import string path = 'D:/python3/Walden.txt' with open(path,'r',encoding= 'utf-8') as tex ...

  2. 作业3-个人项目<词频统计>

    上了一天的课,现在终于可以静下来更新我的博客了.       越来越发现,写博客是一种享受.来看看这次小林老师的“作战任务”.                词频统计 单词: 包含有4个或4个以上的字 ...

  3. C语言实现词频统计——第二版

    原需求 1.读取文件,文件内包可含英文字符,及常见标点,空格级换行符. 2.统计英文单词在本文件的出现次数 3.将统计结果排序 4.显示排序结果 新需求: 1.小文件输入. 为表明程序能跑 2.支持命 ...

  4. c语言实现词频统计

    需求: 1.设计一个词频统计软件,统计给定英文文章的单词频率. 2.文章中包含的标点不计入统计. 3.将统计结果以从大到小的排序方式输出. 设计: 1.因为是跨专业0.0···并不会c++和java, ...

  5. 软件工程第一次个人项目——词频统计by11061153柴泽华

    一.预计工程设计时间 明确要求: 15min: 查阅资料: 1h: 学习C++基础知识与特性: 4-5h: 主函数编写及输入输出部分: 0.5h: 文件的遍历: 1h: 编写两种模式的词频统计函数: ...

  6. Hadoop上的中文分词与词频统计实践 (有待学习 http://www.cnblogs.com/jiejue/archive/2012/12/16/2820788.html)

    解决问题的方案 Hadoop上的中文分词与词频统计实践 首先来推荐相关材料:http://xiaoxia.org/2011/12/18/map-reduce-program-of-rmm-word-c ...

  7. pyspark进行词频统计并返回topN

    Part I:词频统计并返回topN 统计的文本数据: what do you do how do you do how do you do how are you from operator imp ...

  8. 使用storm分别进行计数和词频统计

    计数 直接上代码 public class LocalStormSumTopology { public static void main(String[] agrs) { //Topology是通过 ...

  9. jieba库分词词频统计

    代码已发至github上的python文件 词频统计结果如下(词频为1的词组数量已省略): {'是': 5, '风格': 4, '擅长': 4, '的': 4, '兴趣': 4, '宣言': 4, ' ...

随机推荐

  1. ActiveMQ-5.13.0集群

    ActiveMQ集群介绍 ActiveMQ具有强大和灵活的集群功能,但在使用的过程中会发现很多的缺点,ActiveMQ的集群方式主要由两种:Master-Slave(ActiveMQ5.8版本已不可用 ...

  2. 如何用MathType编辑集合运算符号

    在涉及到集合的运算中,有交并且几种常见的运算,这在数学问题中也是很常见的公式.在用MathType编辑这些符号时,该怎么编辑呢?下面就介绍MathType集合运算符号的编辑方法. 具体操作过程如下: ...

  3. mysql表无权限访问

    当网页出现以上问题时的解决方法: 今天在两台服务器间转移网站,最后把域名解释设置好后等待...然后CMD查看DNS解释情况..解释成功-输入网址-却出现如上信息,首先用#ls -l查看mysql下的v ...

  4. Ubuntu16.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...

  5. redis客户端使用密码

    ./redis-cli  -h 127.0.0.1 -p 6379 -a password

  6. YARN的设计

    YARN:下一代 Hadoop 计算平台 我们现在稍微改变一下用辞.以下名称的改动有助于更好地了解 YARN 的设计: ResourceManager 代替集群管理器 ApplicationMaste ...

  7. 你知道嵌入式C语言中各变量存储的位置吗?

    局部变量.局部静态变量.全局变量.全局静态变量区别如下: 局部变量: 栈区: 局部静态变量:静态区: 全局变量: 静态区的常量区: 全局静态变量:静态区. 在进行C/C++编程时,需要程序员对内存的了 ...

  8. IIS7以上版本去掉伪静态去掉index.php方法

    1,由于从iis7以上的版本httpd.ini文件已不会被解析,将以下的xml文件复制到web.config 的文件中,然后放到网站的根目录即可. <?xml version="1.0 ...

  9. Effective C++ —— 定制new和delete(八)

    STL容器所使用的heap内存是由容器所拥有的分配器对象管理,不是被new和delete直接管理.本章并不讨论STL分配器. 条款49 : 了解new-handler的行为 当operator new ...

  10. (使用lua++)Lua脚本和C++交互(三)

    前两篇文章中介绍了C++调用lua.lua栈操作的一些相关知识. 下面说一下Lua的工具.我们下一步要用到其中的一个帮助我们的开发,其实,Lua里面有很多简化开发的工具,你可以去www.sourcef ...