### updated (thanks, Abigail) ### Unicode NOT included sub expand_escapes { local $_ = shift; s{ ( \\ (?: x[A-Fa-f0-9]{0,2} # hex escape | 0[0-7]{0,3} # octal escape | c. # ctrl-escape | . # any other ) ) }{qq["$1"]}geexs; return $_; }