digitalmars.D.learn - sort strings by interpreting them as integrals
- Andrej Mitrovic (13/13) Jul 29 2012 void main()
- bearophile (9/22) Jul 29 2012 import std.stdio, std.algorithm, std.conv;
- Andrej Mitrovic (2/8) Jul 29 2012 Very nice! Thanks.
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