2012-06-07 41 views
0

Ruby中的以下方法可以帮助扫描预先使用散列的输入字符串吗?匹配一个参数

def foo(bar) 
    (bar.scan(/^#/).empty?) ? "##{bar}" : bar 
end 
+0

我不知道你问 - 你想要什么返回,在什么情况下?这不是确保在开始时有'#'吗? –

+0

所以这个方法会返回保证一个前导散列的小节,你在寻找比那更多的信息吗? –

+0

你为什么不把它放在irb中测试一下? – texasbruce

回答

2

可以达到同样具有:

if bar.start_with?('#') 
    bar 
else 
    "##{bar}" 
end 

或使用三元:

bar.start_with? '#' ? bar : "##{bar}" 
+0

嘿谢谢@Oscar德尔本,这种方式也完美。 –

+0

@Dave牛顿,也谢谢你。 –