Sammenligning af strings

Tags:    delphi

Hej

Jeg skal finde ud af om en streng ligger inde i et interval og er stødt på et problem, eller noget som jeg ikke troede var som det måske er.

Jeg har et interval 143000-77000000, lavet som strings. Det tester jeg så om f.eks. 50123 ligger inden i og meget til min overraskelse så gør den det.

Kan det virkelig være sandt?

Altså at Peter er større end Petersen.

Hvis dette er tilfældet er jeg så nødt til at lave interval om til heltal og teststrengen til heltal også. Ikke det store problem. Bare noget der undrer mig - MEGET.

Mik D



1 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Hej Mik

Ja, det er sandt at 50123 ligger imellem 143000 og 77000000, når du sammenligner som strenge.

Ved sammenligning af strenge starter du fra venstre, og ser i første omgang _kun_ på det første tegn - i det her tilfælde er det 5, som både er større end 1 og mindre end 7 - så allerede her er det givet at tallet ligger i interval du angiver. Havde det første tegn enten været 1 eller 7, havde du været nød til at gå til andet tegn, osv.

Så ja, det smarteste er at konvertere til heltal - eventuelt kan man præfikse strengen med 0'er, så alle tal har samme længde.



t