On Thursday, 5 May 2022 at 17:53:57 UTC, Alexander Zhirov wrote:
I want to use a configuration file with external settings. I'm trying to use regular expressions to read the `Property = Value` settings. I would like to do it all more beautifully. Is there any way to get rid of the line break character? How much does everything look "right"?
regex never looks right ;-) try something else perhaps?? // ------------ module test; import std; void main() { auto file = File("d:\\settings.conf", "r"); string[string] aa; // create an associate array of settings -> [key:value] foreach (line; file.byLine().filter!(a => !a.empty)) { auto myTuple = line.split(" = "); aa[myTuple[0].to!string] = myTuple[1].to!string; } // write out all the settings. foreach (key, value; aa.byPair) writefln("%s:%s", key, value); writeln; // write just the host value writeln(aa["host"]); } // ------------