schutd_palindrome 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/schutd_palindrome.rb +15 -7
- data/lib/schutd_palindrome/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6d65654deded243ef919ba43ef4c697299546809
|
4
|
+
data.tar.gz: 32a8e6d0bb75a91e7be652527c7eba626cb39aa5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b01d0ea6f81f10ffad902daf860ba8b1594a2efe2a93756c04b97fa720e292342f19c252ad2247a156001c89ed043be883036f48325781ffa6b4f8f98ba20607
|
7
|
+
data.tar.gz: 2587bed5c16e5e7585b4388be5b41eed5b50892cf4f63fc860b454bb83f51fc243c2ca19320a89ad45c2a9d1bafaa59738c3aed025e6f7ca714f76216f7eeaf3
|
data/Gemfile.lock
CHANGED
data/lib/schutd_palindrome.rb
CHANGED
@@ -1,17 +1,25 @@
|
|
1
1
|
require "schutd_palindrome/version"
|
2
2
|
|
3
|
-
|
3
|
+
module SchutdPalindrome
|
4
4
|
def palindrome?
|
5
|
-
|
5
|
+
if processed_content.empty?
|
6
|
+
false
|
7
|
+
else
|
8
|
+
processed_content == processed_content.reverse
|
9
|
+
end
|
6
10
|
end
|
7
11
|
|
8
|
-
def letters
|
9
|
-
self.chars.select { |c| c.match(/[a-z]/i) }.join
|
10
|
-
end
|
11
|
-
|
12
12
|
private
|
13
13
|
|
14
14
|
def processed_content
|
15
|
-
self.scan(/[a-z]/i).join.downcase
|
15
|
+
self.to_s.scan(/[a-z\d]/i).join.downcase
|
16
16
|
end
|
17
17
|
end
|
18
|
+
|
19
|
+
class String
|
20
|
+
include SchutdPalindrome
|
21
|
+
end
|
22
|
+
|
23
|
+
class Integer
|
24
|
+
include SchutdPalindrome
|
25
|
+
end
|