C++单词统计(文件流、正则的应用)
来源:互联网 发布:传奇手游 源码 编辑:程序博客网 时间:2024/05/16 04:40
//统计单词个数 ifstream ifs("file1.txt"); regex r("\\w+"); int wordCount=count_if(istream_iterator<string>(ifs),istream_iterator<string>(),[&](const string &s){return regex_search(s,r);});
统计文件中单词个数:
#include <map> #include <fstream> #include <iostream> #include <string> #include <regex>using namespace std; void display_map(map<string, int> &wmap); /***function:统计文本中每个单词出现的次数*author: j.cai*email: jcai@mail.com*/int main(){ const char *mInputFileName="Text.txt"; ifstream ifs(mInputFileName); string mStrTemp; map<string, int> mCountMap; //按行读入文件,用正则找出单词,进行统计 regex regWordPattern("[a-zA-Z]+");//单词的正则式:1)\w+:包含数字 2)[a-zA-Z]:只含字母 while (getline(ifs,mStrTemp)){//逐行读入 const std::sregex_token_iterator end; for(sregex_token_iterator wordIter(mStrTemp.begin(),mStrTemp.end(),regWordPattern);wordIter!=end;wordIter++){//在一行文本中逐个找出单词 //cout<<*wordIter<<endl;//每个单词 mCountMap[*wordIter]++;//单词计数 } } display_map(mCountMap); return 1; } void display_map(map<string, int> &wmap){ map<string, int>::const_iterator map_it; for (map_it=wmap.begin(); map_it!=wmap.end();map_it++) { cout<<"(\""<<map_it->first<<"\","<<map_it->second<<")"<<endl; } }
0 0
- C++单词统计(文件流、正则的应用)
- 05:统计单词数 [C语言字符数组的应用]
- 统计文件中每个单词的个数--C语言实现
- 统计文件的单词数
- C语言实现文件单词统计
- C语言:文件操作之单词统计
- 统计单词(分割字符串,字符串函数的应用)
- 统计一个文件的单词的个数(2)
- 统计一个字符串中单词的个数(C语言)
- 统计一个文件的单词的个数
- C语言统计输入的单词个数
- c: 统计文章的单词数量
- 统计文件中单词的信息
- 统计文件中单词出现的频率
- 统计目录下面的文件所有单词
- fscanf函数统计文件的单词个数
- 统计英文文件中单词数和各单词出现的频率(次数)
- c语言统计从文件读取的文章中所有单词的出现次数
- Git备忘录
- 忘记Django登陆账号和密码的处理方法
- 工业控制系统USB存储设备可信管理方案的(ICICS2015)论文PPT:TMSUI: A Trust Management Scheme
- CocoaPods版本升级
- iOS注册APNs通知
- C++单词统计(文件流、正则的应用)
- Windows 7 安装64位 Python 2.7.3 开发环境
- 装饰器模式
- js刷新页面方法大全
- PHP实现快速排序
- 免安装版数据库MySQL-5.7.12-winx64下载、安装及配置和使用
- poj 1061
- UIButton修改文字大小问题
- 我的第一个博客