I'm with douche. If your config is so complicated you need variable substitution and regex then it's no-longer config: it's a driver program. Might as well program in a programming language.
The JSON superset aspect nicely supports spitting out JSON from a script when people want to do it that way.
HOCON is nice when for example you just want to sub in a couple of env variables or avoid a little cut-and-paste.