String.indexOf + .substring med UTF8 strenge


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
 
Ad

Advertisements


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top