我正在尝试从 (100..1000( 范围内返回符合以下条件的值列表/数组:
- 3 位数值
- 每个值中的所有数字都是唯一的。
$global_range = Array (100..999)
$fun = []
def listOfFunPossibilities
# FUN values should meet the criteria below:
# 1. 3 digit value
# 2. All are unique
$global_range.each do |i|
if (!(/([0-9]).*?1/)).match?(i)
$fun.push(i)
end
end
return $fun
end
listOfFunPossibilities()
过早地应用否定!
:
if (!(/([0-9]).*?1/)).match?(i)
所以你首先否定一个正则表达式(由于某种原因是正确的(,然后你尝试在true
值上调用match
请改用:
if !(/([0-9]).*?1/.match?(i))
甚至
if !/([0-9]).*?1/.match?(i)