Believe it or not, I can\'t find the answer to what I would think would be this very basic question.
In awk, how can I loop over the input string character by charac
Not all awk implementations support the above solutions. In that case you could use substr:
echo here is a string | awk '{
for (i=0; ++i <= length($0);)
printf "%s\n", substr($0, i, 1)
}'
P.S. In some awk implementations length without arguments defaults to $0, i.e. length and length($0) are equivalent.