用awk或sed进行数据转换的一个小例子
来源:互联网 发布:用vb编写九九乘法表 编辑:程序博客网 时间:2024/06/14 08:35
有朋友问我,如何在Linux系统下实现下面数据结构的转换:
转换前:
1,2,3,4,5,6,7,8,A1,2,3,4,5,6,7,8,A,A1,2,3,4,5,6,7,8,A,A,A
转换后:
1,2,3,4,5,6,7,8,A1,2,3,4,5,6,7,8,A_A1,2,3,4,5,6,7,8,A_A_A其中A可以是B,C,D等大写字母,也可以是a,z等小写字母,或者大小写字母组合,其中数字1-8及之间的逗号固定,后面的逗号,如果有的话,必须换成_
我能想到的一般就是用awk或者sed来处理:
awk:
cat data | awk -F, '{for(i=1;i<=8;i++) print $i","}{for(i=9;i<=NF;i++) printf '%s_',$i,printf "\n"}' | sed 's/_$//g'
sed:
cat data | sed -r 's/([a-zA-Z]+),/\1_/g'
说明: 第二种sed方法无疑要简单些,借助于sed的 -r参数,即扩展正则表达式,先将匹配到的数据,来替换,其中\1为反向引用;
阅读全文
1 0
- 用awk或sed进行数据转换的一个小例子
- awk与sed:一个关于多行处理的例子
- awk的小例子
- 【sed&awk】数据的检索
- 一个关于awk命令和sort命令的小例子
- awk&sed小备忘
- C++对文本里面的大量数据进行排序(shell,c++,fopen,awk,sed)
- 一个稍微复杂的awk & sed应用
- awk程序设计的一个例子
- 发一个使用 GridView 对数据小类进行分别汇总的例子
- 发一个使用 GridView 对数据小类进行分别汇总的例子
- 一个栈数据越界的小例子
- 用sed或vi进行多文件替换的方法
- SQL 游标使用的小例子,对于每行数据根据参数的不同进行Insert或Update操作.
- Linux下find、awk、sed、grep命令的例子
- 用sed或awk打印文本文件的奇数行和偶数行
- 【sed&awk】sed基本命令之转换
- grep sed awk小问题解决
- [LibreOJ 537] DNA 序列
- 周的表示
- 笨办法学Python习题14 提示和传递
- Unity结合ZXing生成二维码并保存
- 网易云深度学习第二课NoteBook2
- 用awk或sed进行数据转换的一个小例子
- 程序员实用网站
- unity3d打砖块源码
- Machine Learning Stanford (week 3)
- R中图形参数设置函数par()的使用
- 具体时间的表示
- 初级X编程----信息量挺大的
- php-fpm进程数优化方法
- zcmu-1988