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