`
laziest
  • 浏览: 9556 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
社区版块
存档分类
最新评论

我的第一个ruby程序

    博客分类:
  • Ruby
阅读更多
发表时间:2007年4月29日 15时27分25秒
看了两章语法,拿起参考手册就开始了我的第一个ruby程序,


想起以前做过的一个小工具,就拿来了做实验。

是一个将手机号码文件按地市分离的小程序。
就是熟悉了一下IO系统,因为我平时需要写这一方面的IO太多了。
完成同样功能的JAVA程序花了70行左右的代码,而ruby仅花费了30行,可见ruby确实在语法上非常的简练。
而且ruby的 block 确实无处不在。


rules = Hash.new(0)
filewriters = Hash.new(0)
File.open("rules.txt") do |rule_file|
  rule_file.each do |line|
    area,prefix = line.chomp.split(/\s*\,\s*/)
    rules[prefix] = area;
  end
end
File.open("input.txt") do |input_file|
  input_file.each do |line|
      code_seg = line[0,7];
      if rules.has_key?(code_seg)
        area = rules[code_seg];
        if !filewriters.has_key?(area)
          filewriters[area] = File.open(area+".txt","w+")
        end
        filewriters[area] << line
      else
        if !filewriters.has_key?("000")
          filewriters["000"] = File.open("000.txt","w+")
        end
      
        filewriters["000"] << line
      end
  end
end
filewriters.each_value {|file| file.close}

分享到:
评论

相关推荐

    ruby程序设计

    在Ruby编程环境中,安装和配置Ruby是开始学习的第一步。Ruby可以在多种操作系统上运行,包括Windows和Linux。安装过程包括下载并执行安装程序,设置环境变量,确保Ruby解释器和相关工具如`gem`(Ruby的包管理器)...

    Ruby_向ruby之父学程序设计(第二版)(经典入门)

    第一部分:通过简单的Ruby程序来介绍程序的基本架构。  第二部分:介绍基础语法规则,以及类、模块等面向对象程序设计的思考方法与用词。   第三部分:对一些基础类逐一介绍其功能与用法。 第四部分:介绍一些...

    ruby 程序设计

    - **编辑工具**:除了命令行外,还可以使用FreeRIDE、SciTE等编辑器进行Ruby程序的开发。 ##### §2.3 Ruby-irb - **交互式解释器**:irb是Ruby的一个交互式命令行环境,可以即时测试代码片段。 ##### §2.4 Ruby-...

    ruby程序安装文件

    1. **下载**:首先,你需要从Ruby官方网站或者第三方源获取Ruby 2.1.0的源代码包。 2. **解压**:使用解压缩工具(如WinRAR或7-Zip)打开并提取压缩包文件`ruby-2.1.0`。 3. **编译**:进入解压后的目录,使用`./...

    《Ruby Programming—向Ruby之父学程序设计(第2版)》电子书

    书中的第一章通常会介绍Ruby的基本语法,包括变量声明、数据类型(如整型、浮点型、字符串、布尔型、数组和哈希)以及控制结构(如条件语句if/else和循环for/while)。 接下来,书中的核心内容会深入到Ruby的面向...

    Ruby程序设计资料大全

    2. **Ruby 1.9系列的改进**:Ruby 1.9.1是1.9系列的第一个稳定版本,引入了多项关键改进。例如,它引入了全新的Unicode字符串编码支持,提高了对不同字符集的处理能力;新的语法结构,如内联字符串插值(String ...

    Ruby程序设计(中文教程)

    《Ruby程序设计(中文教程)》是一本专为中国读者编写的详细介绍Ruby编程语言的教程。该教程虽然在详细程度上可能略逊于经典的英文教材《Programming Ruby》,但其优势在于更加贴近中国读者的思维习惯,使得学习过程...

    Ruby及开发工具(一个script的程序语言)

    Ruby是一种高级、动态、面向对象的脚本语言,它的设计理念是强调代码的可读性和简洁性,使得开发者能够更高效地编写程序。Ruby由日本人松本行弘在1995年创建,它深受Perl、Smalltalk、Eiffel、Lisp和Python等语言的...

    ruby小程序2.rar

    - Ruby有一个庞大的库系统,称为Gems,它提供了大量的第三方库和工具,方便开发者扩展功能。 总结来说,"ruby小程序2.rar"包含的两个文件可能是使用Ruby编写的脚本,它们可能实现了特定的功能或者逻辑。要了解这些...

    Ruby-DataObjects企图重写现有的Ruby数据库驱动程序符合一个标准接口

    Ruby-DataObjects是一个重要的Ruby库,它旨在提供一个统一的接口来访问各种不同的数据库系统,如MySQL、PostgreSQL、SQLite3等。这个项目的主要目标是让开发者能够在不改变代码的情况下,轻松地切换数据库后端,这极...

    Ruby-WordsCounted一个Ruby自然语言处理程序

    1. **文本预处理**:去除标点符号、数字和停用词,这是大多数NLP任务的第一步,因为这些元素通常不包含实质性的语义信息。 2. **词汇计数**:统计文本中每个单词出现的频率,这有助于识别文本的主题或关键词。 3. ...

    Ruby元编程第二版中文

    Ruby元编程是编程领域中一个深入且强大的主题,它允许程序员在运行时修改或创建代码,极大地提高了灵活性和代码的动态性。这本书“Ruby元编程第二版”专注于讲解Ruby语言的这一独特特性,旨在帮助开发者更好地理解和...

    Ruby程序设计高级教程

    ### Ruby程序设计高级教程知识点概览 #### 一、Ruby语言概述 - **历史背景**:本章节将介绍Ruby语言的发展历程,从最初的构想到它如何成为一种流行的编程语言。 - **命名来源**:Ruby这个名字背后的故事,以及它为...

    Ruby-twittercldrrbICU的Ruby实现

    Ruby-twittercldrrb是基于ICU(International Components for Unicode)的一个Ruby库,主要用于处理国际化(i18n)和本地化(l10n)任务。这个库为Ruby开发者提供了一套强大的工具,用于在应用程序中实现多语言支持...

    游戏脚本语言(ruby初步)

    RubyGems是一个 Ruby打包系统,可以用来安装和管理 Ruby程序。 游戏脚本语言是游戏开发中的一个重要组成部分,而 Ruby语言是游戏脚本语言中的一种流行语言。了解 Ruby语言的基础知识对于游戏开发者来说是非常重要...

    Ruby_learning_教程-中文版

    它由松本行弘(Yukihiro Matsumoto),人们通常亲切地称他为Matz,于1995年开始设计,并在1997年发布了第一个版本。Ruby的设计哲学是“简单实用”,即通过最少的努力来完成更多的工作,这也是编程语言中“懒人法则”...

    ruby测试代码1

    "ruby测试代码1"可能指的是一个具体的测试用例或者测试框架的实例,用于验证Ruby程序的功能和性能。Ruby提供了多种测试工具,如MiniTest、RSpec和Cucumber等,它们各自有其特点和适用场景。 MiniTest是Ruby标准库的...

    SVM的Ruby源程序

    支持向量机(Support Vector Machine, SVM)是一种广泛应用于机器学习和模式识别的算法,它通过构造一个超平面来最大化类别间的间隔,从而达到分类或回归的目的。在本主题中,我们将深入探讨如何使用Ruby语言实现SVM...

Global site tag (gtag.js) - Google Analytics