Oh, I used that letters in upper case, just for a simple sample...
On Thursday, 10 July 2014 at 16:32:53 UTC, Marc Schütz wrote:
On Thursday, 10 July 2014 at 16:20:29 UTC, Alexandre wrote:
Sorry..
I mean:
auto X = "100000000000000";
auto N = X.insertInPlace(3,',');
On Thursday, 10 July 2014 at 16:05:51 UTC, Alexandre wrote:
I have a string X and I need to insert a char in that
string...
auto X = "100000000000000";
And I need to inser a ',' in position 3 of this string..., I
try to use the array.insertInPlace, but, not work...
I try this:
auto X = "100000000000000";
auto N = X.insertInPlace(1,'0');
`std.array.insertInPlace` doesn't return anything. "In place"
here means "in situ", i.e. it will not create a new string, but
insert the new elements into the existing one. This operation
may still reallocate, in which case the array slice you're
passing in will be updated to point to the new memory.
Either use this instead:
auto x = "100000000000000";
auto n = x.dup;
n.insertInPlace(3, ',');
// or: insertInPlace(n, 3, ',');
... or use slicing and concatenating to construct a new string:
auto g = x[0 .. 3] ~ ',' ~ x[3 .. $];
(Side note about style: It's common practice to use lower-case
names for variables, upper-case first letters are used to
denote types. But of course, that's a matter of taste.)