unescapeBackslashes function
s with every backslash escape of ASCII punctuation replaced by the
character it escapes.
Implementation
String unescapeBackslashes(String s) {
if (!s.contains(r'\')) {
return s;
}
final out = StringBuffer();
var i = 0;
while (i < s.length) {
final c = s.codeUnitAt(i);
if (c == 0x5C &&
i + 1 < s.length &&
isAsciiPunctuation(s.codeUnitAt(i + 1))) {
out.writeCharCode(s.codeUnitAt(i + 1));
i += 2;
continue;
}
out.writeCharCode(c);
i += 1;
}
return out.toString();
}