And one more problem here:

    string name = "test";
    auto nameparts = splitter(name, '.');
    writeln(typeof(joiner(nameparts, ".").array).stringof);

This prints "dchar[]", but i need char[] or string, how to get my 'string' back ?


On Tuesday, 31 December 2013 at 20:49:55 UTC, Dfr wrote:
Hello, i have string like "this.is.a.string" and want to throw away some parts separated by dots, here is first attempt:

name = "this.is.a.string"; // <-- want to make "this.is.a" from this
auto nameparts = splitter(name, '.');
auto name1 = joiner(nameparts[0 .. $-1], '.');

And got this error: "Error: Result cannot be sliced with []"

So, kinda fixed it (correct way?):

name = "this.is.a.string";
auto nameparts = splitter(name, '.').array;
auto name1 = joiner(nameparts[0 .. $-1], '.');

got this:

Error: template std.algorithm.joiner does not match any function template declaration. Candidates are: /usr/include/dmd/phobos/std/algorithm.d(2846): std.algorithm.joiner(RoR, Separator)(RoR r, Separator sep) if (isInputRange!RoR && isInputRange!(ElementType!RoR) && isForwardRange!Separator && is(ElementType!Separator : ElementType!(ElementType!RoR)))

Stuck here, thank you for any help.

Reply via email to