我应该得到一个字符串,并确保它代表一个二进制数字,如"101011"
。
This question处理十六进制字符串,但我不知道如何在语句H
中替换正则表达式中的字母!str[/\H/]
。你能帮帮我吗?
答案 0 :(得分:3)
使用正则表达式的直接方法是:
"101011" !~ /[^01]/
答案 1 :(得分:2)
使用String
方法的四种方式:
str1 = '100100110'
str2 = '100100210'
<强> String#delete 强>
str1.delete('01') == '' #=> true
str2.delete('01') == '' #=> false
<强> String#tr 强>
str1.tr('01','') == '' #=> true
str2.tr('01','') == '' #=> false
<强> String#gsub 强>
str1.gsub(/[01]/,'') == '' #=> true
str2.gsub(/[01]/,'') == '' #=> false
<强> String#count 强>
str1.count('01') == str1.size #=> true
str2.count('01') == str2.size #=> false
答案 2 :(得分:0)
以下是执行此操作的一种方法:
"101011".chars.all? {|x| x =~ /[01]/} # true if binary, else false