个人项目
基本信息
- 学号:2018xxxxx7246
- 姓名:李尚诺
- 仓库地址:https://gitee.com/weberpyth/level-18-personal-project/
时间统计
开发耗时
名称 | 预估时间(分) | 实际时间(分) |
---|---|---|
总时长 | 240 | 214 |
解析-c参数 | 30 | 53 |
解析-f参数 | 60 | 55 |
解析-d参数 | 60 | 41 |
解析-s参数 | 30 | 23 |
解析-n参数 | 20 | 27 |
解析-x参数 | 40 | 15 |
设计思路
读取文件后,将全部字符转换为小写。
设置一个全参数解析方法,控制参数优先级,该方法读取'-?'参数后的下一位参数来获取传入的值
优先识别-x和-n参数,分别指定了停词表和显示数量
-d参数后优先判断是否有-s参数
对于字母统计,直接遍历后记录出现次数即可
对于词频统计,使用正则表达式,首先将所有非空格非a-z0-9字符转换为空格,然后消除所有连续的空格,再消除头尾空格后,以空格作为分隔符进行分割,从而得到完整单词,再遍历所有单词统计词频,最后对结果进行排序
单元测试
情景一 传入全部参数及其值
-c src\resource\Gone_With_Winnd.txt -f src\resource\Gone_With_Winnd.txt -n 5 -d -s src\resource -x src\resource\stops.txt
情景二 乱序传入全部参数及其值
-n 5 -d -s src\resource -x src\resource\stops.txt -c src\resource\Gone_With_Winnd.txt -f src\resource\Gone_With_Winnd.txt
情景三 依次传入部分参数及其值
- -c src\resource\Gone_With_Winnd.txt -f src\resource\Gone_With_Winnd.txt -n 5 -d -s src\resource
- -c src\resource\Gone_With_Winnd.txt -f src\resource\Gone_With_Winnd.txt -n 5
- -f src\resource\Gone_With_Winnd.txt -n 5
- -c src\resource\Gone_With_Winnd.txt
- -n 5 -d -s src\resource -x src\resource\stops.txt
- -f src\resource\Gone_With_Winnd.txt -n 5 -x src\resource\stops.txt
情景四 传入某参数及其值
- -c src\resource\Gone_With_Winnd.txt
- -f src\resource\Gone_With_Winnd.txt
- -d -s src\resource
- -d src\resource
情景五 传入错误的参数或错误的参数值
- -a src\resource\Gone_With_Winnd.txt
- -c src\resource
- -f src\resource
- -d -s src\resource\Gone_With_Winnd.txt
- -d src\resource\Gone_With_Winnd.txt
效能分析
暂无