- var prev = string.charAt(offset - 1);
- var next = string.charAt(offset + 1);
- if ((low.test(match) && !hi.test(next)) || (hi.test(match) && !low.test(prev))) {
- return '\\u' + match.charCodeAt(0).toString(16);
+ var prev = charAt(string, offset - 1);
+ var next = charAt(string, offset + 1);
+ if ((exec(low, match) && !exec(hi, next)) || (exec(hi, match) && !exec(low, prev))) {
+ return '\\u' + numberToString(charCodeAt(match, 0), 16);