我有一個簡短的腳本,它使用正則表達式搜索文件中用戶輸入的特定短語。基本上,它是一個簡單的搜索框。紅寶石鞋搜索框
我現在試圖讓這個搜索框有一個圖形用戶界面,這樣用戶可以輸入一個框,並將他們的匹配「提醒」給他們。
我是使用紅寶石鞋的新手,並且在TheShoeBox網站上使用過這些例子。
任何人都可以指出我的錯在哪裏我的代碼?
這裏是我的命令行版本的作品:
string = File.read('db.txt')
puts "Enter what you're looking for below"
begin
while(true)
break if string.empty?
print "Search> "; STDOUT.flush; phrase = gets.chop
break if phrase.empty?
names = string.split(/\n/)
matches = names.select { |name| name[/#{phrase}/i] }
puts "\n \n"
puts matches
puts "\n \n"
end
end
這是我試圖在使用它紅寶石鞋內:
Shoes.app :title => "Search v0.1", :width => 300, :height => 150 do
string = File.read('db.txt')
names = string.split(/\n/)
matches = names.select { |name| name[/#{phrase}/i] }
def search(text)
text.tr! "A-Za-z", "N-ZA-Mn-za-m"
end
@usage = <<USAGE
Search - This will search for the inputted text within the database
USAGE
stack :margin => 10 do
para @usage
@input = edit_box :width => 200
end
flow :margin => 10 do
button('Search') { @output.matches }
end
stack(:margin => 0) { @output = para }
end
非常感謝
所以,只要確保這些代碼都可以。例如,'phrase'沒有聲明,但是你在這段代碼中使用它。 – 2011-05-17 20:55:00