Time of Update: 2017-01-18
#scanweb.rb #用法ruby scanweb.rb www.jb51.net 將當前結果儲存在c:\1.txt require 'net/http' filename= File.new('c:\1.txt',"w+") if $*[0]==nil puts "hehe,沒有輸入網址" else h = Net::HTTP.new($*[0], 80) resp, data&
Time of Update: 2017-01-18
本章處理一些實際問題. 語句定界符 有些語言需要一定類型的標點,一般會是分號(;)來結束程式的每一語句.Ruby卻採用了shell裡的sh和csh的方便做法.一行中的多個語句由分號分開,但在行尾分號卻並不需要;一個換行被看作一個分號.如果行以反斜線(\)結束,隨後的換行將忽略;這就允許你的單個邏輯行可以跨越數行. 注釋
Time of Update: 2017-01-18
最近有個需求,把數字顯示成固定的位元,位元不足的在前面以零補充比如 5 位:複製代碼 代碼如下:3 -> 00003292 -> 0029212422 -> 12422發現 Ruby 很容易就可以實現了複製代碼 代碼如下:irb> "%05d" % 12422"12422"irb> "%05d" % 22"00022"上面的方法基本上是標準作法。如果是直接處理字串,也可以用 String#rjust:"12422".rjust(5, '0')
Time of Update: 2017-01-18
條件判斷,在程式設計語言中都存在,而Ruby中的條件判斷和Java中類似,當然還是存在些許差別Ruby中條件判斷的條件:1) 可以使用 ==,<,>等比較運算來作為條件,比較運算可以返回true和false,這和java中的文法是類似的2) 一些其他的方法也可以用來作為判斷條件,比如,empty?方法,為空白則返回true,否則返回false3) 有些方法雖然不會返回true或false,但是也能作為條件判斷的條件,他們返回的對象,要麼是false或nil,要麼是意義的對象,
Time of Update: 2017-01-18
JSON由於其資料結構簡單便利,已逐漸成為了互連網上的主流資料交換的資料格式。在討論嵌套對象(Nested Object)的JSON轉換方法之前,我們先看簡單的ruby JSON轉換。首先,ruby對象轉換為JSON字串:複製代碼 代碼如下:class Obj1 def initialize(var1) @var1 = var1
Time of Update: 2017-01-18
閉包(Closure),是指未綁定到任何對象的自由代碼,閉包中的代碼與任何對象和全域變數無關,只與執行此段代碼的上下文相關。今天我們簡要的看一下ruby中的閉包實現。Ruby中的閉包實現有:Block,Proc,Lambada。首先,我們來看Block。複製代碼 代碼如下:ary = [1,2,3,4]ary.collect! do |a| a*aendary.each do
Time of Update: 2017-01-18
%Q用於替代雙引號的字串. 當你需要在字串裡放入很多引號時候, 可以直接用下面方法而不需要在引號前逐個添加反斜線 (\")複製代碼 代碼如下:>> %Q(Joe said: "Frank said: "#{what_frank_said}"")=> "Joe said: "Frank said: "Hello!"""(...)也可用其他非數字字母的符號或成對的符號代替, 諸如[...], !...!, +...+,{...}, <...>等.以下寫法全部與上面等效:
Time of Update: 2017-01-18
Ruby 裡的 block一般翻譯成代碼塊,block 剛開始看上去有點奇怪,因為很多語言裡面沒有這樣的東西。事實上它還不錯。First-class function and Higher-order functionFirst-class function 和 Higher-order function 是函數式程式設計語言裡面的概念,聽起來好像很高端的樣子,其實很很簡單的。First-class functions 是指在某些語言裡,函數是一等公民,可以把函數當做參數傳遞,可以返回一個函數,
Time of Update: 2017-01-18
有了頁面緩衝,Rails 就可以不再介入。在某種程度上,這是件好事,因為您的確可以獲得優秀的效能。Rails 只需建立 HTML 頁面,將其放入目錄,之後,就可以置之於腦後。從那時起,就由應用伺服器管理這些頁面,且頁面進入應用伺服器無需任何迴圈。從效能的角度而言,頁面緩衝真是天賜之福。我也鐘愛頁面緩衝,Rails 使之簡單利落。只需使用一行代碼就可以啟用緩衝。如果再加入一些代碼,就能通過簡單地刪除檔案操作或使用 Rails 較高層的 API
Time of Update: 2017-01-18
如果沒有聽說過 Rails,那麼歡迎您外星旅行歸來,近幾年大概只有那個地方沒有聽說過 Ruby on Rails 了。Rails 最迷人的地方是能夠很快地建立功能完備的應用程式並運行起來。Rails 為 Ajax 而內建整合的 Prototype.js 庫可以輕鬆快速地建立所謂的富 Internet 應用程式。本文將逐步引導您建立 Rails 應用程式。然後深入分析如何利用 Ajax 特性編寫從伺服器上讀寫資料的 JavaScript 代碼。從容起步 Ajax 之旅——Ajax
Time of Update: 2017-01-18
Ruby線程實現經典的生產者消費者問題,用ruby中的Queue類實現線程同步問題。複製代碼 代碼如下:require "thread" puts "ProAndCon" queue = Queue.new #用隊列Queue實現線程同步 producer = Thread.new do 10.times do |i|
Time of Update: 2017-01-18
例如,考慮下面的匹配日期的Regex:複製代碼 代碼如下:/\A((?:19|20)[0-9]{2})[\- \/.](0[1-9]|1[012])[\- \/.](0[1-9]|[12][0-9]|3[01])\z/使用Re之後,Regex可以短小易讀的運算式為基礎,一步一步地構建出來,例如:複製代碼 代碼如下:require 're'include
Time of Update: 2017-01-18
詳細安裝步驟:一、更新Python centos 中預設安裝的python是2.4的版本,因為新版的rails需要提供nodejs的相關支援,需要更新python,更新文章可以直接移步到這個連結 http://www.tomtalk.net/wiki/Python複製代碼 代碼如下:yum install -y bzip2* #nodejs
Time of Update: 2017-01-18
一、空格與tab使用空格縮排(95.364%)使用Tab縮排(4.636%)基於 1,001,987 次提交二、最大行寬80字元(92.618%)120字元(5.893%)150字元(1.489%)基於 1,057,374 次提交三、運算子、冒號、花括弧周圍,逗號、分號後是否使用空格不使用空格(73.366%)複製代碼 代碼如下:sum = 1 +2a,b = 1, 21>2 ? true : false;puts 'Hi'[1, 2, 3].each {|e| puts e}使用空格(2
Time of Update: 2017-01-18
git倉庫輸出 git archive --format=tar --prefix=actasfavor/ HEAD | (cd /home/holin/work/ && tar xf -) 輸出到/home/holin/work/actasfavor/目錄下 Posted by holin At May 16, 2008 16:42 載入plugins中的controller和model # Include hook code here require 'act_as_favor' #
Time of Update: 2017-01-18
而由於ruby作為一個完全純淨的物件導向語言,任何東東都是對象,方法是對象,類也是對象...,所以self就會有很多環境,區分不同環境的self含義才能更好的理解程式的含義 一、Top Level Context Ruby代碼 puts self 列印出main,這個代表Object的預設對象main. 二、在class或module的定義中: 在class和module的定義中,self代表這個class或這module對象: Ruby代碼 class S puts 'Just
Time of Update: 2017-01-18
一、向對象顯示的發送訊息 我們可以向對象直接發送訊息: Ruby代碼 複製代碼 代碼如下:class HelloWorld def say(name) print "Hello, ", name end end hw = HelloWorld.new hw.send(:say,"world") 我們通常使用hw.say("world"),但send可以對private的方法起作用。 不光如此send可以使程式更加動態,下面我們看看一個例子:
Time of Update: 2017-01-18
C#實現Ruby的負數索引器public class InvertibleList<T> : List<T> { public new T this[int index] { get { if (index >= 0) return base[index]; if (Count + index < 0) throw new IndexOutOfRangeException();
Time of Update: 2017-01-18
映像可以說是任何應用至關重要的一部分。從社交網路到一個簡單的Bug追蹤器,映像都扮演著重要的角色。然而管理映像並不是一件容易的事情,需要提前耗費大量的時間精力去計劃。本文示範了如何在Rail中實現這一目標。如何處理你的映像以及在後台建立多個版本?如何通過壓縮映像又不損映像品質,以此來提高頁面效能?這些且聽本文一一道來。入門本文教程是運行於Rails
Time of Update: 2017-01-18
(一)條件判斷條件判斷為基本式:複製代碼 代碼如下:if expression codeend運算式如果不是false或nil,則可執行code部分,所以對於else來說,如果為false或nil,則else下的代碼是要執行的。要注意的是運算式與執行代碼之間要有分界符:例如換行或分號或是then關鍵字。多條件分支情況下,除了可以用else if之外,可以用省略式:elsif複製代碼 代碼如下:if