In Files

  • jcode.rb

Class/Module Index [+]

Quicksearch

String

Public Instance Methods

chop() click to toggle source
 
               # File jcode.rb, line 196
def chop
  (str = self.dup).chop! or str
end
            
chop!() click to toggle source
 
               # File jcode.rb, line 192
def chop!
  self.gsub!(/(?:.|\r?\n)\z/, '')
end
            
delete(del) click to toggle source
 
               # File jcode.rb, line 156
def delete(del)
  (str = self.dup).delete!(del) or str
end
            
delete!(del) click to toggle source
 
               # File jcode.rb, line 151
def delete!(del)
  return nil if del == ""
  self.gsub!(DeletePatternCache[del] ||= /[#{_regex_quote(del)}]+/, '')
end
            
each_char() click to toggle source
 
               # File jcode.rb, line 209
def each_char
  if block_given?
    scan(/./) do |x|
      yield x
    end
  else
    scan(/./)
  end
end
            
end_regexp() click to toggle source
 
               # File jcode.rb, line 59
def end_regexp
  case $KCODE[0]
  when s, S
    /#{PATTERN_SJIS}$/n
  when e, E
    /#{PATTERN_EUC}$/n
  when u, U
    /#{PATTERN_UTF8}$/n
  else
    /.$/n
  end
end
            
jcount(str) click to toggle source
 
               # File jcode.rb, line 205
def jcount(str)
  self.delete("^#{str}").jlength
end
            
jlength() click to toggle source
 
               # File jcode.rb, line 200
def jlength
  self.gsub(/[^\Wa-zA-Z_\d]/, ' ').length
end
            
Also aliased as: jsize
jsize() click to toggle source
Alias for: jlength
mbchar?() click to toggle source
 
               # File jcode.rb, line 46
def mbchar?
  case $KCODE[0]
  when s, S
    self =~ RE_SJIS
  when e, E
    self =~ RE_EUC
  when u, U
    self =~ RE_UTF8
  else
    nil
  end
end
            
original_succ() click to toggle source
Alias for: succ
original_succ!() click to toggle source
Alias for: succ!
squeeze(del=nil) click to toggle source
 
               # File jcode.rb, line 171
def squeeze(del=nil)
  (str = self.dup).squeeze!(del) or str
end
            
squeeze!(del=nil) click to toggle source
 
               # File jcode.rb, line 160
def squeeze!(del=nil)
  return nil if del == ""
  pattern =
    if del
      SqueezePatternCache[del] ||= /([#{_regex_quote(del)}])\1+/
    else
      /(.|\n)\1+/
    end
  self.gsub!(pattern, '\1')
end
            
succ() click to toggle source
 
               # File jcode.rb, line 92
def succ
  str = self.dup
  str.succ! or str
end
            
Also aliased as: original_succ
succ!() click to toggle source
 
               # File jcode.rb, line 78
def succ!
  reg = end_regexp
  if  $KCODE != 'NONE' && self =~ reg
    succ_table = SUCC[$KCODE[0,1].downcase]
    begin
      self[-1] += succ_table[self[-1]]
      self[-2] += 1 if self[-1] == 0
    end while self !~ reg
    self
  else
    original_succ!
  end
end
            
Also aliased as: original_succ!
tr(from, to) click to toggle source
 
               # File jcode.rb, line 147
def tr(from, to)
  (str = self.dup).tr!(from, to) or str
end
            
tr!(from, to) click to toggle source
 
               # File jcode.rb, line 133
def tr!(from, to)
  return nil if from == ""
  return self.delete!(from) if to == ""

  pattern = TrPatternCache[from] ||= /[#{_regex_quote(from)}]/
  if from[0] == ^
    last = /.$/.match(to)[0]
    self.gsub!(pattern, last)
  else
    h = HashCache[from + "1-0" + to] ||= expand_ch_hash(from, to)
    self.gsub!(pattern) do |c| h[c] end
  end
end
            
tr_s(from, to) click to toggle source
 
               # File jcode.rb, line 188
def tr_s(from, to)
  (str = self.dup).tr_s!(from,to) or str
end
            
tr_s!(from, to) click to toggle source
 
               # File jcode.rb, line 175
def tr_s!(from, to)
  return self.delete!(from) if to.length == 0

  pattern = SqueezePatternCache[from] ||= /([#{_regex_quote(from)}])\1*/
  if from[0] == ^
    last = /.$/.match(to)[0]
    self.gsub!(pattern, last)
  else
    h = HashCache[from + "1-0" + to] ||= expand_ch_hash(from, to)
    self.gsub!(pattern) do h[$1] end
  end
end