lib/core/facets/string/nchar.rb in facets-2.8.4 vs lib/core/facets/string/nchar.rb in facets-2.9.0.pre.1

- old
+ new

@@ -2,22 +2,28 @@ # Returns _n_ characters of the string. If _n_ is positive # the characters are from the beginning of the string. # If _n_ is negative from the end of the string. # + # str = "this is text" + # + # str.nchar(4) #=> "this" + # str.nchar(-4) #=> "text" + # # Alternatively a replacement string can be given, which will # replace the _n_ characters. # - # str = "this is text" - # str.nchar(4) #=> "this" - # str.nchar(4, 'that') #=> "that" - # str #=> "that is text" + # str.nchar(4, 'that') #=> "that is text" # + # The original string remains unaffected. + # + # str #=> "this is text" + # def nchar(n, replacement=nil) if replacement s = self.dup n > 0 ? (s[0...n] = replacement) : (s[n..-1] = replacement) - return s + s else n > 0 ? self[0...n] : self[n..-1] end end