Sha256: b514c7e9f065f509c4ae05d8bed4c69c19132867a72585305be78f164aec9f79
Contents?: true
Size: 1.44 KB
Versions: 1
Compression:
Stored size: 1.44 KB
Contents
module PositiveWebSupport::StringExt # 16進数の文字列か否かを判定するメソッド # @return [Boolean] def hex_string? /\A[\da-fA-F]+\Z/ === self end # @!group WebColor を表す文字列に対するメソッド # WebColor の文字列であるか否かを判定するメソッド # @return [Boolean] def is_web_color?( with_sharp: nil ) raise "Error" unless with_sharp.nil? or with_sharp.boolean? # nil if with_sharp.nil? is_web_color_without_sharp? or is_web_color_with_sharp? # true elsif with_sharp is_web_color_with_sharp? # false else is_web_color_without_sharp? end end # WebColor を RgbColor に変換するメソッド # @return [::Array <Integer (natural number)>] def to_rgb_color unless is_web_color? raise "Error" end gsub( /\#/ , "" ).each_char.each_slice(2).map{ | ary | ary.join.hex } end def to_rgb_color_in_parentheses str = to_rgb_color.join( " , " ) "(#{str})" end # @!endgroup private # WebColorの文字列("#"なし)であるか否かを判定するメソッド # @return [Boolean] def is_web_color_without_sharp? hex_string? and length == 6 end # WebColor の文字列("#"あり)であるか否かを判定するメソッド # @return [Boolean] def is_web_color_with_sharp? if /\A\#(.+)\Z/ =~ self $1.is_web_color?( with_sharp: false ) else false end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
positive_web_support-0.4.2 | lib/positive_web_support/string_ext.rb |