C++的一个简单的文本查询程序

C++的一个简单的文本查询程序

ID:37927009

大小:35.50 KB

页数:9页

时间:2019-06-02

C++的一个简单的文本查询程序_第1页
C++的一个简单的文本查询程序_第2页
C++的一个简单的文本查询程序_第3页
C++的一个简单的文本查询程序_第4页
C++的一个简单的文本查询程序_第5页
资源描述:

《C++的一个简单的文本查询程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本篇实例的目的是做一个简单的文本查询程序,通过编码过程有益于您对vector,map,set的基本掌握。/* *目的:一个简单的文本查询程序 *作用:程序将读取用户指定的任意文本文件,然后允许用户从该文件中查找单词。 *查询的结果是该单词出现的次数,并列出每次出现所在的行。 *如果某单词在同一行中多次出现,程序将只显示该行一次。 *行号按升序显示,即第7行应该在第9行之前输出,依此类推。 *//*思路: *1.使用一个vector类型的对象存储整个输入文件的副本。 * 输入文件的每一行是该vec

2、tor对象的一个元素。 * 因而,在希望输出某一行时,只需以行号为下标获取该行所在的元素即可。 *2.将每个单词所在的行号存储在一个set容器对象中。 * 使用set就可确保每行只有一个条目,而且行号将自动按升序排列。 *3.使用一个map容器将每个单词与一个set容器对象关联起来, * 该set容器对象记录此单词所在的行号。 */TextQuery.H文件 #ifndefTEXTQUERY_H#defineTEXTQUERY_H#include#include#include<

3、map>#include#include#include#include#include classTextQuery{  //asbeforepublic:  //typedeftomakedeclarationseasier  typedefstd::string::size_typestr_size;  typedefstd::vector::size_typeline_no;   /*interf

4、ace:  *  read_filebuildsinternaldatastructuresforthegivenfile  *  run_queryfindsthegiven word andreturnssetoflinesonwhichitappears  *  text_linereturnsarequestedlinefromtheinputfile  */  voidread_file(std::ifstream&is)        {store_file(is);build_map();}  s

5、td::setrun_query(conststd::string&)const;   std::stringtext_line(line_no)const;  str_sizesize()const{returnlines_of_text.size();}  voiddisplay_map();    //debuggingaid:printthemap private:  //utilityfunctionsusedbyread_file  voidstore_file(std::ifst

6、ream&);//storeinputfile  voidbuild_map();//associatedeachwordwithasetoflinenumbers   //rememberthewholeinputfile  std::vectorlines_of_text;    //mapwordtosetofthelinesonwhichitoccurs  std::map>word_map;    //charact

7、ersthatconstitutewhitespace  staticstd::stringwhitespace_chars;     //canonicalizestext:removespunctuationandmakeseverythinglowercase  staticstd::stringcleanup_str(conststd::string&);};#endif TextQuery.CPP文件 #include"TextQuery.h"#include#include

8、ing>#include#include#include#include#include#include#include#include usingstd::istringstream;usingstd::set;usingstd::string;using

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。