Ruby字符串处理函数总结列表分享

开发 开发工具
Ruby字符串处理函数包括返回字符串长度函数;判断字符串中是否包含另一个串函数;字符串插入;字符串分隔,默认分隔符为空格等等。

Ruby语言对于编程人员来说是一项非常有用的函数。学好这项语言可以帮助我们实现简便轻松的编写方式。下面我们向大家介绍一下Ruby字符串处理函数的一些基本概念。#t#

Ruby字符串处理函数1.返回字符串的长度

  1. str.length => integer 

Ruby字符串处理函数2.判断字符串中是否包含另一个串

  1. str.include? other_str
     => true or false  
  2. "hello".include? "lo"
     #=
    > true  
  3. "hello".include? "ol"
     #=
    > false  
  4. "hello".include? ?h
     #=
    > true 

 

Ruby字符串处理函数3.字符串插入:

  1. str.insert(index, other_str) 
    =
    > str  
  2.  
  3. "abcd".insert(0, 'X')
     #=
    > "Xabcd"  
  4. "abcd".insert(3, 'X')
     #=
    > "abcXd"  
  5. "abcd".insert(4, 'X') 
    #=
    > "abcdX"  
  6. "abcd".insert(-3, 'X')   
  7.  
  8. -3, 'X') #=> "abXcd"  
  9. "abcd".insert(-1, 'X')
     #=
    > "abcdX" 

Ruby字符串处理函数4.字符串分隔,默认分隔符为空格

  1. str.split(pattern=$;, [limit])
     =
    > anArray  
  2.  
  3. " now's the time".split #=> 
    ["now's", "the", "time"]  
  4. "1, 2.34,56, 7".split(%r{,\s*})
     #=
    > ["1", "2.34", "56", "7"]  
  5. "hello".split(//) #=> 
    ["h", "e", "l", "l", "o"]  
  6. "hello".split(//, 3) #=> 
    ["h", "e", "llo"]  
  7. "hi mom".split(%r{\s*}) #=> 
    ["h", "i", "m", "o", "m"]  
  8.  
  9. "mellow yellow".split("ello")
     #=
    > ["m", "w y", "w"]  
  10. "1,2,,3,4,,".split(',') #=>
     ["1", "2", "", "3", "4"]  
  11. "1,2,,3,4,,".split(',', 4)
     #=
    > ["1", "2", "", "3,4,,"] 

Ruby字符串处理函数5.字符串替换

  1. str.gsub(pattern, replacement)
     =
    > new_str  
  2. str.gsub(pattern) {|match| block } 
    =
    > new_str  
  3. "hello".gsub(/[aeiou]/, '*') 
    #=
    > "h*ll*" #将元音替换成*号  
  4. "hello".gsub(/([aeiou])/, '<\1>') 
    #=
    > "h<e>ll<o>" #将元音加上尖括号,
    \1表示保留原有字符???  
  5. "hello".gsub(/./) {|s| s[0].
    to_s + ' '}
     #=
    > "104 101 108 108 111 "  

 


Ruby字符串处理函数字符串替换二:

  1. str.replace(other_str)
     =
    > str  
  2. s = "hello" #=> 
    "hello"  
  3. s.replace "world"
     #=
    > "world" 

Ruby字符串处理函数6.字符串删除:

 

  1. str.delete([other_str]+) 
    =
    > new_str  
  2. "hello".delete "l","lo" 
    #=
    > "heo"  
  3. "hello".delete "lo" 
    #=
    > "he"  
  4. "hello".delete "aeiou", "^e" 
    #=
    > "hell"  
  5. "hello".delete "ej-m" 
    #=
    > "ho" 

Ruby字符串处理函数7.去掉前和后的空格

  1. str.lstrip =>
     new_str  
  2. " hello ".lstrip 
    #=
    > "hello "  
  3. "hello".lstrip
     #=
    > "hello" 

 

Ruby字符串处理函数8.字符串匹配

  1. str.match(pattern) =>
     matchdata or nil 

Ruby字符串处理函数9.字符串反转

  1. str.reverse => new_str  
  2. "stressed".reverse 
    #=
    > "desserts" 

 

Ruby字符串处理函数10.去掉重复的字符

  1. str.squeeze([other_str]*) => new_str  
  2. "yellow moon".squeeze #=>
     "yelow mon" #默认去掉串中所有重复的字符  
  3. " now is the".squeeze(" ") #=>
     " now is the" #去掉串中重复的空格  
  4. "putters shoot balls".squeeze("m-z") 
    #=
    > "puters shot balls" 
    #去掉指定范围内的重复字符 

Ruby字符串处理函数11.转化成数字

  1. str.to_i=> str  
  2. "12345".to_i #=> 12345 

chomp和chop的区别:
chomp:去掉字符串末尾的\n或\r
chop:去掉字符串末尾的最后一个字符,不管是\n\r还是普通字符

 

  1. "hello".chomp #=> "hello"  
  2. "hello\n".chomp #=> "hello"  
  3.  
  4. "hello\r\n".chomp #=> "hello"  
  5. "hello\n\r".chomp #=> "hello\n"  
  6. "hello\r".chomp #=> "hello"  
  7. "hello".chomp("llo") #=> "he"  
  8.  
  9. "string\r\n".chop #=> "string"  
  10. "string\n\r".chop #=> "string\n"  
  11. "string\n".chop #=> "string"  
  12. "string".chop #=> "strin" 

责任编辑:曹凯 来源: chinaunix.net
相关推荐

2009-11-17 10:55:02

PHP字符串处理函数

2009-12-15 13:15:11

Ruby字符串

2010-10-09 11:54:46

MySQL字符串

2010-07-14 16:35:52

Perl字符串处理函数

2009-11-24 09:55:44

PHP字符串函数

2009-12-01 10:38:08

PHP字符串函数

2009-12-14 13:19:07

Ruby字符串

2010-07-19 15:07:46

Perl字符串处理函数

2010-11-26 11:20:31

MySQL字符串处理函

2010-11-26 09:51:54

MySQL字符串

2010-10-09 12:01:00

MySQL字符串

2009-12-17 13:23:25

Ruby eval方法

2023-08-21 10:28:00

字符串字符Python

2011-07-12 16:14:17

2014-01-02 16:14:10

PostgreSQL字符串

2009-12-11 13:16:04

PHP查询字符串

2023-08-26 20:21:58

字符KotlinJava

2022-05-18 11:35:17

Python字符串

2009-12-08 16:33:45

PHP unpack函

2010-02-04 10:52:36

C++字符串分割函数
点赞
收藏

51CTO技术栈公众号