ngk_palindrome 0.1.0 → 0.2.0
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/ngk_palindrome.rb +15 -9
- data/lib/ngk_palindrome/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 49b48d18f3a9dc4a3ef97bc7bb9ca38bdaf62cd94ea4d678c29d9c44ed594ce3
|
4
|
+
data.tar.gz: 1cc9761c4b1df967468aac4ddc263a86d39df33fd88fe6e2328dba3ef43a3b8c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc57d6f81201f5eed59ae124db7768cb3c9c30cd951c37efd6415de709ce91b99aa6ef7f69b3528db3e9d8b5d8e0f8d2daba0ee5097cddda86c3b3891f5b9eb0
|
7
|
+
data.tar.gz: e73dfea1cfb304ba9edf252f90646fee1fbd87b084f811504d5257f338717207b5d2d09461f956c309ca375d2ce4c31f4c01d24649b4eff4ef59a3ea3baa0a79
|
data/Gemfile.lock
CHANGED
data/lib/ngk_palindrome.rb
CHANGED
@@ -1,22 +1,28 @@
|
|
1
1
|
require "ngk_palindrome/version"
|
2
2
|
|
3
|
-
|
3
|
+
module NgkPalindrome
|
4
4
|
|
5
5
|
# Returns true for a palindrome, false otherwise.
|
6
6
|
def palindrome?
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
7
|
+
if processed_content.empty?
|
8
|
+
false
|
9
|
+
else
|
10
|
+
processed_content == processed_content.reverse
|
11
|
+
end
|
13
12
|
end
|
14
13
|
|
15
14
|
private
|
16
15
|
|
17
16
|
# Returns content for palindrome testing.
|
18
17
|
def processed_content
|
19
|
-
|
20
|
-
self.gsub(/\W/, '').downcase
|
18
|
+
self.to_s.scan(/[A-Za-z0-9]/).join.downcase
|
21
19
|
end
|
20
|
+
end
|
21
|
+
|
22
|
+
class String
|
23
|
+
include NgkPalindrome
|
24
|
+
end
|
25
|
+
|
26
|
+
class Integer
|
27
|
+
include NgkPalindrome
|
22
28
|
end
|