M
Michael Berg
Hej Alle,
Hvordan er det lige at String.indexOf() virker sammen med UTF-8 strenge?
Jeg sidder med en ret triviel search-and-replace strengrutine, men oplever
nogle mystiske ting når jeg begynder at arbejde med strenge, der indeholder
UTF-8. Det er næsten som om at den position som String.indexOf() returnerer
ikke svarer til hvad man så efterfølgende kan hive ud med
String.substring(). Altså:
String utfstring = "abcabcabc<utf8-volapyk>defdef";
int a = utfstring.indexOf("def");
utfstring.substring(a,a+6) != defdef .... ????
Er der nogen der ved hvordan det helt præcist forholder sig med indexOf og
substring i relation til UTF-8 strenge?
Det ville også være super hvis en eller anden havde en (hurtig!)
replacesubstring dims, der selvfølgelig også virker med UTF-8. Eneste
alternativ jeg kan se er at hive strengen over i en byte array og løbe den
igennem tegn for tegn, og det kan jeg ikke forestille mig vil performe
specielt godt.
Mvh
/Michael
Hvordan er det lige at String.indexOf() virker sammen med UTF-8 strenge?
Jeg sidder med en ret triviel search-and-replace strengrutine, men oplever
nogle mystiske ting når jeg begynder at arbejde med strenge, der indeholder
UTF-8. Det er næsten som om at den position som String.indexOf() returnerer
ikke svarer til hvad man så efterfølgende kan hive ud med
String.substring(). Altså:
String utfstring = "abcabcabc<utf8-volapyk>defdef";
int a = utfstring.indexOf("def");
utfstring.substring(a,a+6) != defdef .... ????
Er der nogen der ved hvordan det helt præcist forholder sig med indexOf og
substring i relation til UTF-8 strenge?
Det ville også være super hvis en eller anden havde en (hurtig!)
replacesubstring dims, der selvfølgelig også virker med UTF-8. Eneste
alternativ jeg kan se er at hive strengen over i en byte array og løbe den
igennem tegn for tegn, og det kan jeg ikke forestille mig vil performe
specielt godt.
Mvh
/Michael