Module: ExtendedString
- Defined in:
- lib/wikicloth/core_ext.rb
Instance Method Summary collapse
- #addslashes ⇒ Object
- #auto_link ⇒ Object
- #blank? ⇒ Boolean
- #dump ⇒ Object
- #last(n) ⇒ Object
- #smart_split(char) ⇒ Object
- #to_slug ⇒ Object
Instance Method Details
#addslashes ⇒ Object
25 26 27 |
# File 'lib/wikicloth/core_ext.rb', line 25 def addslashes self.gsub(/['"\\\x0]/,'\\\\\0'); end |
#auto_link ⇒ Object
34 35 36 |
# File 'lib/wikicloth/core_ext.rb', line 34 def auto_link Rinku.auto_link(to_s) end |
#blank? ⇒ Boolean
21 22 23 |
# File 'lib/wikicloth/core_ext.rb', line 21 def blank? respond_to?(:empty?) ? empty? : !self end |
#dump ⇒ Object
53 54 55 56 57 |
# File 'lib/wikicloth/core_ext.rb', line 53 def dump() ret = to_s delete!(to_s) ret end |
#last(n) ⇒ Object
49 50 51 |
# File 'lib/wikicloth/core_ext.rb', line 49 def last(n) self[-n,n] end |
#smart_split(char) ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/wikicloth/core_ext.rb', line 59 def smart_split(char) ret = [] tmp = "" inside = 0 to_s.each_char do |x| if x == char && inside == 0 ret << tmp tmp = "" else inside += 1 if x == "[" || x == "{" || x == "<" inside -= 1 if x == "]" || x == "}" || x == ">" tmp += x end end ret << tmp unless tmp.empty? ret end |
#to_slug ⇒ Object
29 30 31 |
# File 'lib/wikicloth/core_ext.rb', line 29 def to_slug self.gsub(/\W+/, '-').gsub(/^-+/,'').gsub(/-+$/,'').downcase end |