自动生成语料
2015-10-29 17:33
253 查看
这次又来了,很简单的用法,遗憾的事情是还是停留在awk的脚本上面,什么时候整一个C++的版本吧。直接贴代码了:
用法是 awk -f test2.awk infile > outfile
对一句话中以 括号(英文的)包起来,以”|” 为分隔符的句子进行展开。
eg:
infile:
相应的输出的文件是
outfile:
自己一定要整一个C++的版本出来才行!fighting
#!/bin/awk -f BEGIN{ } { tmp = $0; if($0 ~ /\(/ && $0 ~ /\)/) { ind = index(tmp, "("); if(ind > 0) { if(ind > 1) name1 = substr(tmp, 1, ind - 1); else name1 = ""; } tmp1 = substr(tmp, ind + 1, length(tmp) - ind); ind1 = index(tmp1, ")"); if(ind1 > 0) { name2 = substr(tmp1, 1, ind1 - 1); } if(ind1 < length(tmp1)) name3 = substr(tmp1, ind1 + 1, length(tmp1) - ind1); else name3 = ""; split(name2, name2_arr, "\|"); for(name_tmp in name2_arr) printf("%s %s %s\n", name1, name2_arr[name_tmp], name3); }else{ printf("%s\n", $0); } } END{ }
用法是 awk -f test2.awk infile > outfile
对一句话中以 括号(英文的)包起来,以”|” 为分隔符的句子进行展开。
eg:
infile:
温度调到(26|27|28)度
相应的输出的文件是
outfile:
温度调到26度 温度调到27度 温度调到28度
自己一定要整一个C++的版本出来才行!fighting
相关文章推荐
- C语言:Day7~Day8
- Tmux使用 (一)
- iOS中的lldb研究
- PHP XDebug Sublime Text 单步调试
- 高性能分布式计算与存储系统设计概要
- NMEA自动分析生成报告的工具
- POI解析Excel
- iOS 8,9NagationBar 更改颜色
- 关于Mysql的Qcache优化
- 由于共享冲突,你的更改不能保存到“XXX.xlsx0”
- Tomcat的基本配置
- .NET Interceptor with Dynamic Proxy
- 定义一个单利存储数据
- 机器学习理解(四)
- express-session deprecated undefined resave option; provide resave option app.js :16:9
- android异常!!! FAILED BINDER TRANSACTION !!!
- VC++ MFC获取对话框上控件的位置
- CSS3转换过渡动画效果总结
- java List 排序 Collections.sort() 对 List 排序
- java中两个日期相隔的天数和月数