我正在使用以下三元运算符?:
。
rl = globrl == 1 ? "?([-+])*([" dgt "])?([.,])+([" dgt "])"
: "^[-+]?[" dgt "]*[.,]?[" dgt "]+$"
看来 awk 不允许在新行中继续三元运算符。
答案1
Awk 语法对空格敏感。实际上,换行符是语法中的一个标记,而不是消失的空格。
但是,Awk 也支持反斜杠续行,类似于 C 预处理器、shell 和make
:
rl = globrl == 1 ? "?([-+])*([" dgt "])?([.,])+([" dgt "])" \
: "^[-+]?[" dgt "]*[.,]?[" dgt "]+