替换 - 用' '与gawk

时间:2015-01-07 21:10:45

标签: regex awk gawk

我有这个数据集

格式 ID日期分隔字符


这是一个示例文件

FILE data.txt
004 06/23/1962 AAA-BBB-CCC-DDD
023 11/22/1963 AAA-BBB-CCC-DDD
070 06/23/1963 AAA-BBB-CCC-DDD

我的gawk脚本可以正常工作

call gawk 'BEGIN { BLANK = " " } { print $2 BLANK $3 }' lottery.midday.txt

and I receive just data and data which is what I want
06/23/1962 AAA-BBB-CCC-DDD
11/22/1963 AAA-BBB-CCC-DDD
06/23/1963 AAA-BBB-CCC-DDD

但我的问题是我不知道如何用-替换 我想用空格替换破折号

gawk 'BEGIN { BLANK = " " } { print $3 BLANK $2 } data.txt
gawk 'BEGIN { BLANK = " " } { b=$3 gsub(/-/, " ") print} {print nb BLANK $2 }' data.txt
gawk { BLANK = " " } {print nb BLANK $2; gsub(/-/, " "); print }
gawk 'BEGIN { BLANK = " " RESULT=$3} {print gsub(/-/, " ", RESULT)} { print $3 BLANK $2 }' data.txt

1 个答案:

答案 0 :(得分:0)

试试这个:

awk '{gsub(/-/," ",$3);print $2,$3}' file

使用您的输入示例,上面的行输出:

06/23/1962 AAA BBB CCC DDD
11/22/1963 AAA BBB CCC DDD
06/23/1963 AAA BBB CCC DDD

P.S。我刚发现我们有相同的用户名! ^ _ ^