digitalmars.D.learn - sort strings by interpreting them as integrals
- Andrej Mitrovic <andrej.mitrovich gmail.com> Jul 29 2012
- "bearophile" <bearophileHUGS lycos.com> Jul 29 2012
- Andrej Mitrovic <andrej.mitrovich gmail.com> Jul 29 2012
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
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
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









"bearophile" <bearophileHUGS lycos.com> 