2012-03-07 32 views
0

壞冠軍之後的一切,但我不知道如何來形容它。紅寶石 - 不在話下IRC機器人 - 一個字

on :message, "\.addfact" do |m| 
    open('facts.txt', 'a') { |f| 
    f.print "\n *XXXXXX* ~ #{m.user.nick}" 
    } 
    m.reply "Fact added, #{m.user.nick}" 
end 

基本上,只要有人在IRC通道機器人是在執行此操作:

<random_irc_user> .addfact這是一個事實。但它包含的點...,和笑臉=):)

這裏的小機器人是要去把它添加到一個文本文件中,格式

這又是一個事實,但其上的其他線路並剛纔添加=)〜Cool_guy

這是一個事實,它包括了點......,和笑臉=):)〜random_irc_user

我已經得到了新的生產線,並且「 random_irc_user「部分工作, 但我不知道如何去做實際的事實。我猜想或類似的論點,但我不確定他們。

回答

3

使用正則表達式,你的命令後,捕捉一切:

on :message, /^\.addfact (.+)/ do |m, fact| 
    File.open('facts.txt', 'a') { |f| f.puts "#{fact} ~ #{m.user.nick}" } 
    m.reply "Fact added!" 
end 
+0

對不起,我真的不明白......這就是我試圖做 :消息,/^\.addfact(+ )/ do | m,fact | open('facts.txt','a'){| f | f.print 「\ n〜#{} m.user.nick」 } m.reply 「事實說!」 結束 – qwerty1911 2012-03-08 14:31:54

+0

你用我的確切例子? 「事實」變量將包含要添加到文件中的字符串。所以你可以繼續添加代碼。你不明白哪部分? – 2012-03-08 14:32:52

+0

#..添加事實字符串。和林不知道我也會如何獲得實際的事實爲TXT – qwerty1911 2012-03-08 14:33:32