存档

‘ruby’ 分类的存档

ruby内嵌表达式

2010年7月7日 没有评论

可以用#{}内嵌表达式,如:

  1. ruby> var“ abc ”
  2. “ abc ”
  3. ruby> “1234#{var}5678″
  4. “1234 abc 5678″
分类: ruby 标签:

TOP5外包网站

2010年1月7日 leleba 没有评论

ruby的url解码函数和url编码函数

2010年1月5日 leleba 没有评论

含中文字符的url是一些乱码,如中文”个”,在url中表示为”%b8%f6″。有时需要进行url解码和编码,两个函数如下:

def URLDecode(str)
str.gsub!(/%[a-fA-F0-9]{2}/) { |x| x = x[1..2].hex.chr }
end

def URLEncode(str)
str.gsub!(/[^\w$&\-+.,\/:;=?@]/) { |x| x = format(%%%x, x[0]) }
end

分类: ruby 标签:

给ruby程序以及ruby待操作的文件以完整的路径

2009年12月30日 leleba 没有评论

有的时候需要给ruby程序以及ruby待操作的文件以完整的路径,举例说明吧:

在g:\ding\anpc\163_anpc.rb程序中有如下代码:

3.times {
load ‘..\anpc\data_163.rb’
load ‘..\bin\bin_163.rb’
}

如果在g:\ding\anpc\ 下执行163_anpc.rb, 程序可以正常运行,但如果在别的路径,比如c:\,执行g:\ding\anpc\163_anpc.rb,程序就会报错,说找不到data_163.rb和bin_163.rb。

解决问题的方法是给ruby程序以完整的路径,如下所示:

3.times {
load File.join(File.dirname(__FILE__), ‘data_163.rb’)
load File.join(File.dirname(__FILE__), ‘../bin/bin_163.rb’)
}

类似的例子:

在g:\ding\anpc\data_163.rb程序中有如下代码:

#初始化user
users = []
File.open(‘user_163_anpc.txt’) do |f|
f.each_line do |line|
words = line.split(‘ ‘)
users << {:user => words[0], :password => words[1]}
end
end

该程序在g:\ding\anpc\ 下执行data_163.rb, 文件操作正常,但如果在别的路径,比如c:\,执行g:\ding\anpc\data_163.rb,程序就会报错,说找不到文件user_163_anpc.txt。

解决问题的方法是给待操作的文件以完整的路径,如下所示:

#初始化user
users = []
users_filename = File.join(File.dirname(__FILE__), ‘user_sina_anpc.txt’)
File.open(users_filename) do |f|
f.each_line do |line|
words = line.split(‘ ‘)
users << {:user => words[0], :password => words[1]}
end
end

本文原创于http://www.sdgz.cn

分类: ruby 标签:

Ruby字符处理的几个实例

2009年5月5日 没有评论

Ruby的字符处理能力是比较强大的,以下是我利用ruby处理汉字字符时摸索出的几个实例:

删除:
char = “查看位置 某路某小区”
char = char.delete(‘查看位置’)
其中char来源于网页,有的时候会显示乱码,可能是网页和文本编辑器的编码不一样造成的。
这时可以使用:
char = char[8 .. 996]

截取:
char = “3室2厅1厨1卫2阳台”
想截取“3室”中的“3”、“2厅”中的“2”和“1卫”中的“1”
char_1 = char[0,1]
char_4 = char[3,1]
char_10 = char[9,1]

匹配:
if (char_1 =~  /3/) && (char_4 =~  /2/) && (char_10 =~  /1/)
ie152.radio(:id, /3室2厅1卫/).set
end

本文原创于 http://www.sdgz.cn,转摘请注明出处。

ruby添加字符串到文件

2009年4月27日 1 条评论

ruby添加字符串到文件比较tricky,我用的代码如下:

file = File.open(“test.txt”, “a”)
ie111.image(:class => /xyz/, :index => 1).click
html1 = ie111.text_field(:id, “html_box”).value
file << html1
file.close

分类: ruby 标签: