从与rekx模式匹配的行中删除回车换行符与awk

时间:2014-06-19 08:17:58

标签: regex awk

我有以下情况,我想从下一行以某种模式开始的行中删除回车换行。
在下面的情况下,“下一行”以“。”开头。在“。”前面有x个空格。
我想删除上一行末尾的回车换行符,以及“。”前面的空格。

Query.FieldByName('dataField')
        .AsString;

应用awk脚本后,代码应如下所示

Query.FieldByName('dataField').AsString;

此致

1 个答案:

答案 0 :(得分:4)

我有这个:

awk '/^\s*\./{sub(/^\s*/,"");printf "%s",$0;next}
             {printf "%s%s",(NR==1?"":RS),$0}END{print ""} ' file

例如:

kent$  cat f
foo
.bar
  .bar2
xyz
                .abc

kent$  awk '/^\s*\./{sub(/^\s*/,"");printf "%s",$0;next}{printf "%s%s",(NR==1?"":RS),$0}END{print ""} ' f
foo.bar.bar2
xyz.abc