以下代码在 python 中给出。我希望它用 gawk 编写,但我无法找到语法的正确链接。请帮助我。
t=0;
while(t<10):
x=1
s = raw_input()
for c in s:
if(c=='F' or c=='L' or c=='D' or c=='T'):
x = x*2
print x
t = t+1
以下代码在 python 中给出。我希望它用 gawk 编写,但我无法找到语法的正确链接。请帮助我。
t=0;
while(t<10):
x=1
s = raw_input()
for c in s:
if(c=='F' or c=='L' or c=='D' or c=='T'):
x = x*2
print x
t = t+1
gawk 'NR <= 10 { x=1; len = length($0);
for (i = 1; i < len; i++)
if (substr($0, i, 1) ~ /[FLDT]/)
x *= 2;
print x
}'
未经测试,因此可能不太正确。该substr
线是最有可能出现问题的线;它一次提取一个字符$0
(几乎不是效率的缩影),然后将其与正则表达式进行比较。您可以考虑n = gsub(/[FLDT]/, 'X')
which 给出它所做的替换计数(以及因此[FLDT]
行中的字符数),然后x
适当地相乘。
该NR <= 10
条件仅处理前十行。