字符串

1.创建字符1:new用来创建新字符,empty?检验字符是否为空

title = String.new #=> ""

title.empty? #=>true

创建字符2:用"="

str = "hello"或者str='hello'(ps:单/双 引号区别," "会转义,' '原样输出,"\n"是换行效果)

2.通用分隔符 %+例如!!,{},[]

str = %! hehe !

3.嵌入文档

sonnet =<<
this is a language i think good
do u know
30
puts sonnet

4.字符连接

+,<<,.contact方法(此只连一个字符串)

Object.freeze冻结字符串,禁止改变

5.字符串访问

e.g. str="a horse!"

str['hor']#若存在'hor则返回‘hor',否则返回nil表示搜索字符串不存在。

str[7]#=>33,因为是个"!",其字符编码是33,

所以str[7].chr #=>"!"

str[2,2]#=>"ho", str[2,2].capitalize#=>"Ho"

str[0..3]#=>a ho而 str[0...3]#=>a h  三个点表示不包括最后一个字符

6.字符串比较:

<=>比较的是字符编码,-1,0,1代表小于,等于,大于"a" <=>"a" #=>0

而casecmp则会忽略大小写"a"<=>"A" #=>1,"a".casecmp "A" #=>0

6.字符操作:

6.1字符插入:insert方法

"Be careful".insert 3,"very " #=>Be very careful

6.2字符替换

str="sun of bitch"

(1) str["bitch"]="brother" #=>sun of brother

(2) str[7]="a " #=>sun of a bitch

(3) str[3,11]="shine" #=>sunshine

(4)str[/bitch$/]="brother"  #正则表达式

ruby学习-字符串的更多相关文章

  1. Ruby学习中(首探数组, 注释, 运算符, 三元表达式, 字符串)

    一. 数组 1.定义一个数组 games = ["英雄联盟", "绝地求生", "钢铁雄心"] puts games 2.数组的循环 gam ...

  2. ruby 学习笔记 1

    写ruby blog  系统的记录下.也是对我学ruby的点滴记录. 先介绍下我的学习环境.系统:ubuntu12.04文档:techotopia ,ruby文档,the hard way learn ...

  3. Ruby学习心得之 Linux下搭建Ruby环境

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Ruby学习心得之 Linux下搭建Ruby环境1.前言2.Linux下安装Ruby环境 一 ...

  4. .Net程序员之Python基础教程学习----字符串的使用 [Second Day]

         在The FirstDay 里面学习了列表的元组的使用,今天开始学习字符串的使用.字符串的使用主要要掌握,字符串的格式化(C语言中我们应该都知道,Python和C语言差别不大),字符串的基本 ...

  5. Ruby学习之mixin

    直接上代码: module Action def jump @distance = rand(4) + 2 puts "I jumped forward #{@distance} feet! ...

  6. ruby学习网站

    Ruby官方中文网(推荐): https://www.ruby-lang.org/zh_cn/ 国内非常不错的Ruby学习教程网站(推荐): http://www.yiibai.com/ruby Ru ...

  7. Ruby学习笔记4: 动态web app的建立

    Ruby学习笔记4: 动态web app的建立 We will first build the Categories page. This page contains topics like Art, ...

  8. ruby学习笔记(1)-puts,p,print的区别

    ruby学习笔记-puts,p,print的区别 共同点:都是用来屏幕输出的. 不同点:puts 输出内容后,会自动换行(如果内容参数为空,则仅输出一个换行符号):另外如果内容参数中有转义符,输出时将 ...

  9. Ruby学习之对象模型

    这两周工作内容较多,平时自己也有点不在状态,学的东西有点少了,趁着现在还有点状态,赶紧复习一下之前学习的Ruby吧. Ruby是我真正开始接触动态语言魅力的第一个语言,之前虽然也用过且一直用perl. ...

随机推荐

  1. 8、JPA-映射-双向一对一

    一个管理对应一个部门,一个部门对应一个管理,例中由部门维护关联关系 实体类 Department package com.jpa.yingshe; import javax.persistence.* ...

  2. JAVA记录-JDBC介绍

    JDBC(Java DataBase Connection),java数据库连接,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成 ...

  3. golang变量声明

    func main() { var a1 int a1 = 1 var a = 1 b := 1 var c, d int c = 1 d = 1 var e, f = 1, 2 g, h := 1, ...

  4. elasticsearch-head连接不上es

    修改elasticsearch.yml,增加如下字段 http.cors.enabled: true http.cors.allow-origin: "*" cros为: Cros ...

  5. Netty 实现HTTP文件服务器

    一,需求 文件服务器使用HTTP协议对外提供服务.用户通过浏览器访问文件服务器,首先对URL进行检查,若失败返回403错误:若通过校验,以链接的方式打开当前目录,每个目录或文件都以超链接的形式展现,可 ...

  6. 【51nod】1239 欧拉函数之和 杜教筛

    [题意]给定n,求Σφ(i),n<=10^10. [算法]杜教筛 [题解] 定义$s(n)=\sum_{i=1}^{n}\varphi(i)$ 杜教筛$\sum_{i=1}^{n}(\varph ...

  7. 字体选择框QFontComboBox

    self.combobox_2 = QFontComboBox(self)  # 实例化字体列表框 combobox.currentFont()  返回字体选择框中当前的字体 self.combobo ...

  8. Git之创建仓库并上传/更新项目版本

    1.Git配置 使用Git的第一件事就是设置你的名字和email,这些就是你在提交commit时的签名,每次提交记录里都会包含这些信息.使用git config命令进行配置: $ git config ...

  9. MHA-手动Failover流程(传统复制&GTID复制)

    本文仅梳理手动Failover流程.MHA的介绍详见:MySQL高可用架构之MHA 一.基本环境 1.1.复制结构 VMware10.0+CentOS6.9+MySQL5.7.21 ROLE HOST ...

  10. CentOS6.4下Mysql数据库的安装与配置

    原文连接:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 说到数据库,我们大多想到的是关系型数据库,比如 ...