I won't answer everything but just on this one question: On 23 November 2010 11:04, John Bird <johnkb...@paradise.net.nz> wrote:
> Extra question: > > It looks like code like > > for i:=1 to length(string1) do > begin > DoSomethingWithOneChar(string1[i]); > end; > > cannot be used reliably. The problems are that length(string1) looks like > it cannot be safely used - as unicode characters may include 2 codepoints > and length(string1) highlights that there is a difference between the > number > of unicode characters in a string and the number of codepoints. Still > figuring out what is the best practice here, as I have quite a lot of > string > routines. Should be be OK as long as the unicode text actually is ASCII. > > you can use something like this: var C: Char; ... for C in String1 do begin DoSomethingWithOneChar(C); end; In this case you don't need to know the index of each character, you just get the char using the for..in..do loop.
_______________________________________________ NZ Borland Developers Group - Delphi mailing list Post: delphi@delphi.org.nz Admin: http://delphi.org.nz/mailman/listinfo/delphi Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject: unsubscribe