c++ 文本处理

技术c++ 文本处理 c++ 文本处理c++ 文本处理
1、使用sstream版本
(1)功能:截取第一列为1以后的数据,如下图,截取第5行(包括第5行)以后的数据,前面4行数据丢弃。(2)代码:tex

c文本处理

c++ 文本处理

1、使用sstream版本

(1)功能:截取第一列为一以后的数据,如下图,截取第5行(包括第5行)以后的数据,前面四行数据丢弃。

(2)代码:textProc.cc

#包含输入输出流

#包含fstream

#包含流

#包含字符串

使用命名空间标准;

int main(int argc,char *argv[]) {//*argv[]是一个指针数组,也就是一个字符串数组。

字符串dir='/data/';

string old _ file=dir argv[1]'/input/txdsp _ input _ old。dat ';

string gen _ file=dir argv[1]'/input/txdsp _ input。dat ';

字符串cmd=' mv

cmd=cmd gen _ file ' ' old _ file

if(系统(cmd。c _ str())==0){ 0

cout'file移动正常!恩德尔

} else {

标准输出文件移动失败!恩德尔

}

ifstream为(old _ file);

流操作系统的(gen _ file);

istringstream iss

字符串行,字;

while(getline(is,line)){ 0

iss.str(线);//刷新线流中的字符串

国际空间站。clear();//清除线流中的状态,如果线流读完了故障位会拉起,导致刷新了新数据也不能读取。

issword/利用线流一个一个单词的读取,这里只读一个帧头标识。

if(word=='1') { //将找到帧头后的所以数据都输出。

oslineendl

打破;

}

}

while(getline(is,line)){ 0

oslineendl

}

操作系统。close();

就是。close();

返回0;

}

2、regex版本

#包含输入输出流

#包含fstream

#包含正则表达式

#包含字符串

使用命名空间标准;

int main(int argc,char *argv[]) {//*argv[]是一个指针数组,也就是一个字符串数组。

字符串dir='/data/';

string old _ file=dir argv[1]'/input/txdsp _ input _ old。dat ';

string gen _ file=dir argv[1]'/input/txdsp _ input。dat ';

字符串cmd=' mv

cmd=cmd gen _ file ' ' old _ file

if(系统(cmd。c _ str())==0){ 0

cout'file移动正常!恩德尔

} else {

标准输出文件移动失败!恩德尔

}

ifstream为(old _ file);

流操作系统的(gen _ file);

字符串行;

smatch结果;

雷盖克斯re('^1.*');

while(getline(is,line)){ 0

if(regex_search(line,results,re)) { //将找到帧头后的所以数据都输出。

oslineendl

打破;

}

}

while(getline(is,line)){ 0

oslineendl

}

regex re2('^tel:(\\d{11}),addr:(\\w)');//正则表达式相对于大蟒的要多加一个反斜杠"\",应该\在C是特殊字符

string str=' tel:15688886666,addr :四川';

regex_search(str,results,re2);//传给regex_search的字符串可以是字符串,字符wchar等四种类型,对应的使用smatch、cmatch、wcmatch等四中类型。为了简单,一般只使用字符串匹配。

cout结果。str()endl;//打印整个潜艇用热中子反应堆(海底热反应堆的缩写)

cout结果。str(1)endl;//打印第一个匹配的括号(\\d{11})

cout结果。str(2)endl;//打印第二个匹配的括号(\\w)

操作系统。close();

就是。close();

返回0;

}

输出:

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/132066.html

(0)

相关推荐

  • 第二十三章 Centos7下Docker安装kibana

    技术第二十三章 Centos7下Docker安装kibana 第二十三章 Centos7下Docker安装kibana一、查找kibana镜像
    [root@staging ~]# docker sear

    礼包 2021年12月24日
  • Eureka属性配置

    技术Eureka属性配置 Eureka属性配置一:Eureka Instance实例信息配置 里面的配置以"-"隔开 其实也支持驼峰命名代替"-"首先是入门时的配置:
    server: port: 80

    礼包 2021年10月28日
  • 铝怎么拼音,氮化铝是什么,有什么用途啊

    技术铝怎么拼音,氮化铝是什么,有什么用途啊中文名称:氮化铝拼音:danhualv英文名称:alumin(i)um nitride分子式:AlN分子量:40.99密度:3.235g/cm3说明:AlN属类金刚石氮化物,最高

    生活 2021年10月29日
  • 操作虚拟仿真需要什么能力(在线仿真与软件仿真的主要区别)

    技术的软件仿真和硬件仿真指的是什么本篇文章给大家分享的是有关的软件仿真和硬件仿真指的是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、软件仿真

    攻略 2021年12月24日
  • mybatis-plus判断数据是否存在(springboot mybatisplus使用教程)

    技术spring boot+mybatis-plus怎样使用shardingsphere分库分表spring boot+mybatis-plus怎样使用shardingsphere分库分表,相信很多没有经验的人对此束手无

    攻略 2021年12月20日
  • 格拼音,占上中下格的拼音有哪些

    技术格拼音,占上中下格的拼音有哪些拼音格,它是有4条横着的平行线从上到下依次组成了上格、中格和下格格拼音。 在四线三格占上中格的小写字母有9个:b、d、f、h、i、k、l、t、ü,注意它们书写在中上格时,笔画上端必须紧顶

    生活 2021年10月25日