初步了解一下什么是ruby
def undef 方法定义
module 模块定义
class 类定义
defined? 检查类型
条件语句 if,then,else,elsif,case,when,unless
循环语句 for ,in,while,until,next,break,do,redo,retry,yield
逻辑判断 not ,and ,or
逻辑或空值 true,false,nil
异常处理 rescue,ensure
对像引用super ,self
嵌入模块BEGIN END
块的起始 begin/end
文件相关_FILE_ _LINE_
方法返回return
别名 alias
符号
; 用来分隔多语句
()定义方法时容纳参数列表
,隔开多个参数
.将对象归与它的方法分开
::域作用符号,将(模块)类与它的常量隔开
运算符
[] []=数组下标,数组赋值
** 乘冥
!~ + - 非,位非,一元加 负号
* / % 乘 除 模
+ - 加 减
>> << 右移 左移
& 位与
^| 位异或 位或
<= < > >= 小于等于 小于 大于 大于等与
<==> == === =~ != !~ 各种相等判断
&& 短路与
|| 短路或
.. ... 区的开始到结束点,第二个不包括尾
?: 三元条件运算符
全局变量由$开头.它们可以在程序的任何位置访问到.在初始化前,全局变量有一个特殊的值 nil.
这里列出了一些以$打头并跟单个字符的特殊变量.比如,$$包含了Ruby解释器的进程id,它是只读的.这里是主要的系统变量以及它们的含义(细节可在Ruby的参考手册中查到):
$! 最近一次的错误信息
$@ 错误产生的位置
$_ gets最近读的字符串
$. 解释器最近读的行数(line number)
$& 最近一次与正则表达式匹配的字符串
$~ 作为子表达式组的最近一次匹配
$n 最近匹配的第n个子表达式(和$~[n]一样)
$= 是否区别大小写的标志
$/ 输入记录分隔符
$ 输出记录分隔符
$0 Ruby脚本的文件名
$* 命令行参数
$$ 解释器进程ID
$? 最近一次执行的子进程退出状态
=begin
示例:win32api操作
=end
require 'dl'
User32 = DL.dlopen("user32")
MB_OKCANCEL = 1
message_box = User32['MessageBoxA', 'ILSSI']
r, rs = message_box.call(0, 'OK?', 'Please Confirm', MB_OKCANCEL)
case r
when 1
print("OK!n")
when 2
print("Cancel!n")
end
system($*[0]) #命令行接收参数 $*[0]全局变量
File.open('c:\boot.ini').ecah do |line|;puts line; end #读取全部内容
arr=File.readlines('c:\boot.ini');puts arr[0] ) #只读第一行
File.open('c:\boot.ini') do |f1| #另一种方法,只读第一行
while line=f1.gets
puts line
break
end
end
#写文件
File.new('c:1.txt',"w").puts 'message'
ruby写扫描当前网页所有url的脚本
#scanweb.rb#用法rubyscanweb.rbwww.gimoo.net将当前结果保存在c:1.txtrequire'net/http'filename=File.new('c:1.txt',"w+")if$*[0]==nilputs"hehe,没有输入网址"elseh=Net::HTTP.new($*[0],80)re
比较详细的ruby symbol 学习资料
解释的不错,应该明确了不少rubysymbol详解起因最近在学习rubyonrails,的确是一个优秀的数据库开发框架。但在过程中,发现在视图文件夹中的rhtml文件
ruby will_paginate的用法
新版本的will_paginate已经抛弃了这样的做法,转而使用gem的方式,本文通过建立一个名为foobar的应用来了解一下will_paginate的用法。==============================
编辑:广州明生医药有限公司
标签:方法,定义,参数,文件,语句