sort strings by interpreting them as integrals
    bearophile 
    bearophileHUGS at lycos.com
       
    Sun Jul 29 19:15:02 PDT 2012
    
    
  
Andrej Mitrovic:
> void main()
> {
>     string[] x = ["_100", "_10", "_20"];
>     sort(x);
>     writeln(x);
> }
>
> result:
> ["_10", "_100", "_20"]
>
> I need to treat these as if they were integrals, although the
> underscore complicates things here since it should be ignored. 
> So the
> result I want is:
> ["_10", "_20", "_100"]
import std.stdio, std.algorithm, std.conv;
void main() {
     auto data = ["_100", "_10", "_20"];
     schwartzSort!(s => to!int(s[1 .. $]))(data);
     writeln(data);
}
Bye,
bearophile
    
    
More information about the Digitalmars-d-learn
mailing list