AWK 格式如下:
/REGEX/ {Action}
将执行Action
如果当前行匹配REGEX
.
有没有办法添加一个else
子句,如果当前行与正则表达式不匹配,则将执行该子句,而不显式使用 if-then-else,如下所示:
/REGEX/ {Action-if-matches} {Action-if-does-not-match}
没那么短:
/REGEX/ {Action-if-matches}
! /REGEX/ {Action-if-does-not-match}
但 (g)awk 也支持三元运算符:
{ /REGEX/ ? matching=1 : matching = 0 ; if ( matching ==1 ) { matching_action } else { notmatching_action } }
UPDATE:
根据伟大的格伦·杰克曼的说法,你可以在比赛中分配变量,例如:
m = /REGEX/ { matching-action } !m { NOT-matching-action }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)