小编use*_*116的帖子

如何检查Ruby中的闭括号,括号或括号的有效性

写一个方法'valid_string?' 接受一个字符串.如果括号,括号和花括号正确关闭,则返回true.否则返回false.

valid_string?("[ ]")                  # returns true
valid_string?("[  ")                  # returns false
valid_string?("[ ( text ) {} ]")      # returns true
valid_string?("[ ( text { ) } ]")     # returns false
Run Code Online (Sandbox Code Playgroud)

我的代码:对所有事情都是假的.甚至尝试对个别情况{} ||使用显式布尔值 ()||等没有用.对于一切都返回true或false.这是我的驱动程序代码吗?

def valid_string?(str) 

    if str == ("\[\s+]")
        true
    else
        false
    end
end
Run Code Online (Sandbox Code Playgroud)

更新的解决方案:----------------------------------------------- - 是的!#match绝对更好!虽然我的最后一行测试代码正在评估为true.什么时候应该是假的...

def valid_string?(str) 
if str.match "(\\[.+\\])" || "|(\\(\\))" || "|({})"
    return true
else
    return false
    end
end

puts valid_string?("[ ]")                  # returns true
puts valid_string?("[  ")                  # returns false
puts valid_string?("[ ( text …
Run Code Online (Sandbox Code Playgroud)

ruby regex rubular

10
推荐指数
3
解决办法
4915
查看次数

标签 统计

regex ×1

rubular ×1

ruby ×1