[Rd] Re: [R] Why does substr<- truncate and not replace...
Kurt Hornik
Kurt.Hornik@ci.tuwien.ac.at
Sat, 8 Sep 2001 08:28:21 +0200
>>>>> Peter Dalgaard BSA writes:
> Thomas Vogels <tov@ece.cmu.edu> writes:
>> ... when the replacement string is shorter than the portion of the
>> string to be replaced?
>>
>> The documentation to substr (in R 1.3.1) gives me:
>>
>> If the portion to be replaced is longer than the replacement
>> string, then only the portion the length of the string is
>> replaced.
>>
>> And so I try:
>>
R> x <- "abcdef"
R> substr(x,2,3) <- "xy" #ok
R> x
>> [1] "axydef"
R> substr(x,2,3) <- "w" #ko
R> x
>> [1] "aw"
>>
>> hmm, I would have expected "awdef". Am I reading the docs wrong? (Or
>> am I just blinded to expect this string because that's what Perl would do?)
>>
>> Thanks!
>> -tom
> Looks like a bit of a bug. I bet the \0 terminator gets copied in from
> the replacement.
There are yet more interesting effects when using longer portions:
R> x <- "abcdef"
R> x
[1] "abcdef"
R> substr(x, 2, 4) <- "x"
R> x
[1] "ax"
-k
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._