Awk is a viable replacement for Bash for scripting. A long established standard and installed on pretty much every POSIX system. It has more robust facilities for handling variables, arrays, regex search & substitution, etc.
This previous comment of mine goes into a bit more detail: https://news.ycombinator.com/item?id=23242753
If you expect that someone else can read and maintain your code with minimal learning I don't think it's the tool of choice.
(Fun-for-mostly-me fact, my very first programming job ever was writing awk. It was a while ago. I certainly don't remember any awk now).