我有以下腳本:標準輸入不起作用紅寶石
$stdin.each_line do |data|
blocks = data.scan(/\+[^+]+\+/)
blocks.reject! { |b| b.include? "AAAAAAAAA" }
p blocks
end
該腳本將刪除的那串在一個標準輸入文件。我有兩個問題:
- stdin似乎沒有工作,它輸出
[]
。 - 我該如何修改腳本,說拒絕長度爲20或以上的單個字母的延伸段,因此如果有20個或更多A的延伸段,請刪除該塊。
你如何發送輸入?你還可以添加你想要的測試輸入/輸出嗎? – Dogbert 2011-04-13 10:45:48
你是什麼意思的「它不工作」?如果我執行腳本並輸入+ AAAAA ++ BBBBB ++ AAAAAAAAAAAAAAAAAAAAAAAAA +我會得到 [「+ AAAAA +」,「+ BBBBB +」]。 – 2011-04-13 10:47:49
我認爲你的正則表達式不是你正在尋找的。 – 2011-04-13 10:52:57