Time of Update: 2017-01-18
示範代碼: [code]#!/usr/bin/env ruby COUNT = 10 require 'benchmark' $account_chars = ('A'..'Z').to_a.delete_if {|c| c =~ /[AEIOUY]/ } #$password_chars = ('0'..'9').to_a $password_chars = Array.new $password_chars[0..9] = ('0'..'9').to_a $password_chars[10
Time of Update: 2017-01-18
新版本的will_paginate已經拋棄了這樣的做法,轉而使用gem的方式,本文通過建立一個名為foobar的應用來瞭解一下will_paginate的用法。 ============================== C:\>rails foobar -d mysql C:\>cd foobar C:\foobar>ruby script/generate scaffold article title:string content:text
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
前面一節的 Fruit 類有兩個實變數,分別表述水果的類型和狀態.直到為這個類寫了一個定製的inspect方法,我們方才瞭解它不會對一個缺乏屬性的水果做出合理的解釋.幸運的是,Ruby提供了一種允許實變數總是被初始化的方法. initalize方法
Time of Update: 2017-01-18
什麼是一個存取器? 我們在前面已經討論過實變數了,但卻未過多的討論.一個對象的實變數屬於它的屬性,也是它與其它來自同一個類的對象的一般區別.讀寫它的屬性是重要的;這樣做需要做一個叫著屬性存取器(attribute accessors)的方法.我們將很快看到我們並不是總要明確地寫出存取器方法,但現在先讓我們瞭解所有的細節.存取器的兩種類型是寫(writer)和讀(reader). ruby> class Fruit
Time of Update: 2017-01-18
當一個方法結束工作時我們也許需要進行清理工作.也許一個開啟的檔案需要關閉,緩衝區的資料應清空等等.如果對於每一個方法這裡永遠只有一個退出點,我們可以心安理得地將我們的清理代碼放在一個地方並知道它會被執行;但一個方法可能從多個地方返回,或者因為異常我們的清理代碼被意外跳過. begin file = open("/tmp/some_file", "w") # ... write
Time of Update: 2017-01-18
ruby實現石頭剪刀布遊戲複製代碼 代碼如下:#encoding: utf-8arr = ['石頭', '剪刀', '布']win_arr = [['石頭', '剪刀'], ['剪刀', '布'], ['布', '石頭']]#隨機computer的值,放入result數組中result = [arr.sample]while (true) puts "請輸入石頭、剪刀、布" input_value = gets.force_encoding("GBK").encode("
Time of Update: 2017-01-18
ruby,nokogori,爬取糗事百科最新的10頁加圖片比並同時儲存進文本跟資料庫複製代碼 代碼如下:#encoding:utf-8require "open-uri"require "nokogiri"require "mysql"@dbh=Mysql.real_connect("localhost","root","dengli","pachong")@file=open("qb.txt","w")def getQiubai(url) data=open(url){|f| f.
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
Ruby語言中的String是mutable的,不像java、C#中的String是immutable的。比如 複製代碼 代碼如下: str1="abc" str2="abc" 在java中,對於字面量的字串,jvm內部維持一張表,因此如果在java中,str1和str2是同一個String對象。而在Ruby中, str1和str2是完全不同的對象。同樣,在java中對於String對象的操作都將產生一個新的對象,而Ruby則是操縱同一個對象,比如: 複製代碼 代碼如下:
Time of Update: 2017-01-18
單從技術而言,ruby本身確實很爽,令程式員的工作變得輕鬆有趣! 下面的代碼示範了如何找出100以內的素數: 複製代碼 代碼如下: using System; namespace Mersenne { class Program { static void Main(string[] args) { for (int i = 2; i < 50; i++) { if (CheckDigital(i)) { Console.WriteLine("{0} ",i); } }
Time of Update: 2017-01-18
Private private 函數只能 在本類和子類的 上下文中調用,且只能通過self訪問。 這個意思就是:private函數,只能在本對象內部訪問到。 對象執行個體變數(@)的存取權限就是 private。 複製代碼 代碼如下: class AccessTest def test return “test private” end def test_other(other) “other object ”+ other.test end end t1 = AccessTest.new t2
Time of Update: 2017-01-18
代碼如下:複製代碼 代碼如下:require 'date' day = Date.new(2008, 2, -1) end_of_month = day.strftime('%d').to_i year_and_month = day.strftime('%Y%m') for today in 1..end_of_month do p sprintf('%s%02d', year_and_month, today)
Time of Update: 2017-01-18
Ruby代碼複製代碼 代碼如下:if @user.update_attributes(:password => params[:user][:password]) flash[:notice] = '密碼修改完成' redirect_to :action => 'index' else redirect_to :action => 'change_pass', :id => @user
Time of Update: 2017-01-18
一、數字Ruby支援整數和浮點數,整數可以是任意長度 一定範圍內的整數以二進位存放,它們屬於fixnum類型,當超出這個範圍時則自動轉換為bignum類型 表達方式:符號+一串字元,數字串中的底線會被忽略,(首碼包括:0表示八進位, 0x表示十六進位, 0b表示二進位)123_456_789_123_345_789 # Bignum0xaabb # 十六進位 也可以通過在前面加上問號來得到ASCII碼字元對應的整數值和逸出序列的值?a # 一般字元?\n # 分行符號 (0x0a)?\C-a #
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
1. 先搜尋BEGIN語句,搜到則執行,否則執行程式的第一行 2. 碰到函數定義,類定義,模組定義則執行,導致這些東西被定義 3. 碰到導致程式退出的語句,或者到了檔案結尾或者遇到__END__則退出執行 4. 在退出執行前,典型的執行END語句塊或者由at_exit註冊的退出鉤子語句。但是如果由exit!導致的退出,前面的兩種情況不執行
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