grh814_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/grh814_palindrome.rb +16 -9
- data/lib/grh814_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: 0114a2db8f27ae01e93f61be503e64e57b71f953c7f9506cf2dd3ba10f11633b
|
4
|
+
data.tar.gz: abfcd31ba204c08f7faa25b4a086c63e2c9ef2483260d4c56d79a7b075c06719
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a51da512af85ae21cc51f93a5a58ab367b8090ba94909f36ad52c18562cb8d2020ab6718eef051e8fa8a2b1f01428b6cc6b4b3ade2966552ef7a59dd8bf09d88
|
7
|
+
data.tar.gz: e6f6b6be4911739b30106d1f724fa14d94b82f37d1ca3899846c736ed92891b52618419de4e82ed8a8a3b169f89c93545d79ba33f0fd1f0cf635fbe5f92450d3
|
data/Gemfile.lock
CHANGED
data/lib/grh814_palindrome.rb
CHANGED
@@ -1,21 +1,28 @@
|
|
1
1
|
require "grh814_palindrome/version"
|
2
2
|
|
3
|
-
|
3
|
+
module Grh814Palindrome
|
4
4
|
|
5
5
|
# Returns true for a palindrome, false otherwise.
|
6
6
|
def palindrome?
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
self.chars.select { |c| c.match(/[a-z]/i) }.join
|
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
|
-
# Returns content for palindrome testing.
|
16
|
+
# Returns the content for palindrome testing.
|
18
17
|
def processed_content
|
19
|
-
self.scan(/[a-z]/i).join.downcase
|
18
|
+
self.to_s.scan(/[a-z\d]/i).join.downcase
|
20
19
|
end
|
21
20
|
end
|
21
|
+
|
22
|
+
class String
|
23
|
+
include Grh814Palindrome
|
24
|
+
end
|
25
|
+
|
26
|
+
class Integer
|
27
|
+
include Grh814Palindrome
|
28
|
+
end
|