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)

相关推荐

  • 如何分析Oracle SYSDBA审核

    技术如何分析Oracle SYSDBA审核这篇文章给大家介绍如何分析Oracle SYSDBA审核,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Oracle
    SYSDBA审核受初始化参数audit_

    攻略 2021年11月12日
  • javascript截取字符串中文乱码怎么办

    技术javascript截取字符串中文乱码怎么办这篇文章主要为大家展示了“javascript截取字符串中文乱码怎么办”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javas

    攻略 2021年11月7日
  • MySQL是如何保证数据不丢的

    技术MySQL是如何保证数据不丢的本篇内容主要讲解“MySQL是如何保证数据不丢的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL是如何保证数据不丢的”吧!

    攻略 2021年12月8日
  • 春笋怎么保存,什么方法保存竹笋时间最长

    技术春笋怎么保存,什么方法保存竹笋时间最长1. 要保存好竹笋,要先了解一点竹笋老化方面的知识春笋怎么保存。竹笋在强光和高温下新陈代谢很旺盛,竹笋会出现纤维老化。此外,竹笋被采挖出来后,由于没有根部供水了,加上断口失水和竹

    生活 2021年10月24日
  • 人有多少块肌肉,人最坚硬的肌肉是哪块啊`?

    技术人有多少块肌肉,人最坚硬的肌肉是哪块啊`?人体共约639块肌肉,我们生活中的一切动作,都是在神经系统的调控下,由肌肉的收缩和舒张带动骨人有多少块肌肉、关节运动而实现的。现在,摸摸你的身体,你觉得哪块肌肉最强壮?舌头、

    生活 2021年10月27日
  • Intellij IDEA智能补全的方法有哪些

    技术Intellij IDEA智能补全的方法有哪些本篇内容介绍了“Intellij IDEA智能补全的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情

    攻略 2021年11月16日