Translating escape sequences

Richmond Mathewson richmondmathewson at gmail.com
Wed Mar 15 03:27:02 EDT 2017


No; it won't always be 4 characters, here's an admittedly extremely 
obscure ancient Sinhala number;
0x111F4.

Of course the chances of encountering whacky characters like that is 
small, but you'll have to make sure you
can cope with them should they crop up.

If you look at Eduardo Ba\u00f1uls you will have to strip what comes 
after the '\' of the prefix 'u'
and the suffix 'uls' and then you can cope with whatever is left:

Reasonably pseudo-code following:

set the item delimiter to \
put what's after the item delimiter into HOLDER
delete char 1 of HOLDER
delete the last char of HOLDER
delete the last char of HOLDER
delete the last char of HOLDER
put "0x" & HOLDER into NUNUM

at this point "NUNUM" could be alost any length, but that should not 
matter unduly.

Richmond.

On 3/14/17 11:26 pm, J. Landman Gay via use-livecode wrote:
> I'm dealing with non-English languages, and JSON data retrieved from a 
> database comes in with unicode escape sequences like this: Eduardo 
> Ba\u00f1uls.
>
> I need to translate those. I can do it by replacing the "\u" with "0x" 
> and then using numToCodepoint() to get the UTF16 character. But there 
> could be many of these in the same string, so I'm looking for a 
> one-shot command that might just do them all. I don't think we have one.
>
> The alternative is to loop through all the text, getting an offset for 
> each "\u" and then calculating the number of characters after that to 
> use with numToCodepoint(). But will it always be 4 characters in any 
> language?
>
> Or is there an easier way?
>




More information about the use-livecode mailing list