## digitalmars.D.learn - sort strings by interpreting them as integrals

Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
```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"]

How would you implement that? It could be a nice exercise! :)
```
Jul 29 2012
"bearophile" <bearophileHUGS lycos.com> writes:
```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
```
Jul 29 2012
Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
```On 7/30/12, bearophile <bearophileHUGS lycos.com> wrote:
import std.stdio, std.algorithm, std.conv;
void main() {
auto data = ["_100", "_10", "_20"];
schwartzSort!(s => to!int(s[1 .. \$]))(data);
writeln(data);
}

Very nice! Thanks.
```
Jul 29 2012