rubyhelper 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rubyhelper/stringhelper.rb +30 -21
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8fb33b641f1172d07a1f2189537dc12d00339af4
4
- data.tar.gz: a9a12314bd2446d1f6b0f43aca7e673ea0208d5b
3
+ metadata.gz: c50db820531494030fa2a98274eb72f7f57fe28f
4
+ data.tar.gz: 3ce62f101ae31ff6bda9896144bd203b0cface8c
5
5
  SHA512:
6
- metadata.gz: 75713394a233a4214c0e4c766cbf8fb5de5fea11f24bdfa0c0dd250d8f076a201d85ec2dced34cf663d836e28e6283d8825db4742894f80afe0c1598d3c32ea5
7
- data.tar.gz: ba1095c5b3bd2eeac47db412cd6d92388ce3a0c85e51ff07f50ccfa0c4158eabcef2c8fe46769e16ec348f1d520fc4534fe75f9aff02ace5867e3dec80a08e15
6
+ metadata.gz: 3bb6a8a4a8e42680cac5e1f0673763a68cf69b709b0f6ee8d73f6154064acb8baa86ac74f7910a3e27f569dacad77378298f3f663e016301d002a2e05d1e7652
7
+ data.tar.gz: 50e93914f99ebaf246e78e245130547436d959d392e3f1aa3fe437c14d8b57bd101506af5cefc7f10f4dbb739ab223027751b0b5030d4182398ff85edf602c6c
@@ -5,21 +5,21 @@ require 'digest'
5
5
 
6
6
  module StringHelper
7
7
 
8
+ # UTF-8 encoding and replace invalid chars, Remove accents from the string. Change the case as first argument if not nil
8
9
  # == Params
9
10
  # case_mod: nil (not changement), :upcase, :capitalize or :downcase
10
11
  # replace: if a char is not utf8 valid, character will replace it
11
- # UTF-8 encoding and replace invalid chars, Remove accents from the string. Change the case as first argument
12
12
  def to_plain(case_mod = nil, replace= " ")
13
13
  return self.p.encode('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '').to_case(case_mod)
14
14
  end
15
15
 
16
- # Remove accents
17
- def p()
16
+ # Remove accents from the string, and replace it by the same letter in ASCII
17
+ def p
18
18
  return self.tr("ÀÁÂÃÄÅàáâãäåĀāĂ㥹ÇçĆćĈĉĊċČčÐðĎďĐđÈÉÊËèéêëĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħÌÍÎÏìíîïĨĩĪīĬĭĮįİıĴĵĶķĸĹĺĻļĽľĿŀŁłÑñŃńŅņŇňʼnŊŋÒÓÔÕÖØòóôõöøŌōŎŏŐőŔŕŖŗŘřŚśŜŝŞşŠšſŢţŤťŦŧÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųŴŵÝýÿŶŷŸŹźŻżŽž",
19
19
  "AAAAAAaaaaaaAaAaAaCcCcCcCcCcDdDdDdEEEEeeeeEeEeEeEeEeGgGgGgGgHhHhIIIIiiiiIiIiIiIiIiJjKkkLlLlLlLlLlNnNnNnNnnNnOOOOOOooooooOoOoOoRrRrRrSsSsSsSssTtTtTtUUUUuuuuUuUuUuUuUuUuWwYyyYyYZzZzZz")
20
20
  end
21
- def p!(replace= " ")
22
- return self.replace(self.p(replace))
21
+ def p!
22
+ return self.replace(self.p)
23
23
  end
24
24
 
25
25
  # == Params
@@ -41,10 +41,11 @@ module StringHelper
41
41
  return self.replace(self.to_case(case_mod))
42
42
  end
43
43
 
44
+ # Return a simple ascii string. Invalid characters will be replaced by "replace" (argument)
45
+ # Accents are removed first and replaced by the equivalent ASCII letter
44
46
  # == Params
45
47
  # replace: a caracter to replace non-ascii chars
46
48
  # case_mod: nil (not changement), :upcase, :capitalize or :downcase
47
- # return a simple ascii string. Invalid characters will be replaced by "replace" (argument)
48
49
  def to_ascii(replace="", case_mod = nil)
49
50
  s = String.new
50
51
  self.p.each_char do |c|
@@ -62,12 +63,13 @@ module StringHelper
62
63
  return f
63
64
  end
64
65
 
65
- #To_i with delimiter
66
- def to_i_wd(char=' ')
66
+ # to_i with delimiter
67
+ # Example : "12.000.000".to_ii => 12000000
68
+ def to_ii(char=' ')
67
69
  self.delete(char.to_s).to_i
68
70
  end
69
71
 
70
- #CRYXOR
72
+ #CRYXOR (one time pad dirt application)
71
73
  def ^(k)
72
74
  str = ""
73
75
  self.size.times do |i|
@@ -76,7 +78,7 @@ module StringHelper
76
78
  return str
77
79
  end
78
80
 
79
- #SHA2
81
+ #SHA2 shortcuts
80
82
  def sha2
81
83
  Digest::SHA2.hexdigest(self)
82
84
  end
@@ -84,12 +86,13 @@ module StringHelper
84
86
  return self.replace(self.sha2)
85
87
  end
86
88
 
89
+ # Get a str with a static length.
90
+ # If the str size > n, reduce the str (keep str from the (param place) )
91
+ # You should check the test files for examples
87
92
  # ==Param
88
93
  # n: number of char
89
94
  # char: char to replace if the initial str is too short
90
95
  # place: :begin/:front :end/:back :center/:middle
91
- # Get a str with a static length.
92
- # If the str size > n, reduce the str (keep str from the (param place) )
93
96
  def static(n, char=' ', place= :back)
94
97
  char = char.to_s
95
98
  n = n.to_i
@@ -117,7 +120,7 @@ module StringHelper
117
120
  return self.replace(self.static(n, char))
118
121
  end
119
122
 
120
- #Returns true or false if the string if "true" or "false"
123
+ #Returns true or false if the string if "true" or "false". else nil
121
124
  def to_t
122
125
  case self
123
126
  when "true"
@@ -130,19 +133,25 @@ module StringHelper
130
133
  end
131
134
 
132
135
  #get only the digits and symbols in the string
133
- def get_int
134
- return self.gsub(/[^\d\-\+]/, "")
136
+ # == Params
137
+ # sign: (true/false) if true, keep the - and + signs
138
+ def get_int(sign = true)
139
+ return self.gsub(/[^\-\+\d]/, "") if sign == true
140
+ return self.gsub(/[^\d]/, "")
135
141
  end
136
- def get_int!
137
- return self.replace(self.get_int)
142
+ def get_int!(sign = true)
143
+ return self.replace(self.get_int(sign))
138
144
  end
139
145
 
140
146
  #as get_int but with . and ,
141
- def get_float
142
- return self.gsub(/[^\d\.\,\-\+]/, "")
147
+ # == Params
148
+ # sign: (true/false) if true, keep the - and + signs
149
+ def get_float(sign = true)
150
+ return self.gsub(/[^\-\+\d\.\,]/, "") if sign == true
151
+ return self.gsub(/[^\d\.\,]/, "") if sign == true
143
152
  end
144
- def get_float!
145
- return self.replace(self.get_float)
153
+ def get_float!(sign = true)
154
+ return self.replace(self.get_float(sign))
146
155
  end
147
156
 
148
157
  # Capitalize a sequence
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyhelper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - poulet_a
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-20 00:00:00.000000000 Z
11
+ date: 2014-08-30 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A list of utils for the basic Class of ruby.
14
14
  email:
@@ -52,6 +52,6 @@ rubyforge_project:
52
52
  rubygems_version: 2.4.1
53
53
  signing_key:
54
54
  specification_version: 4
55
- summary: improve String::static
55
+ summary: ''
56
56
  test_files: []
57
57
  has_rdoc: