字符串处理函数
1.返回字符串的长度
str.length => integer

2.判断字符串中是否包含另一个串
str.include? other_str => true or false
"hello".include? "lo"#=> true"hello".include? "ol"#=> false"hello".include? ?h     #=> true

3.字符串插入:
复制代码
str.insert(index, other_str) => str
"abcd".insert(0, 'X')    #=> "Xabcd""abcd".insert(3, 'X')    #=> "abcXd""abcd".insert(4, 'X')    #=> "abcdX""abcd".insert(-3, 'X')
-3, 'X')   #=> "abXcd""abcd".insert(-1, 'X')   #=> "abcdX"
复制代码

4.字符串分隔,默认分隔符为空格
复制代码
str.split(pattern=$;, [limit]) => anArray
" now's the time".split        #=> ["now's", "the", "time"]"1, 2.34,56, 7".split(%r{,\s*}) #=> ["1", "2.34", "56", "7"]"hello".split(//)               #=> ["h", "e", "l", "l", "o"]"hello".split(//, 3)            #=> ["h", "e", "llo"]"hi mom".split(%r{\s*})         #=> ["h", "i", "m", "o", "m"]"mellow yellow".split("ello")   #=> ["m", "w y", "w"]"1,2,,3,4,,".split(',')         #=> ["1", "2", "", "3", "4"]"1,2,,3,4,,".split(',', 4)      #=> ["1", "2", "", "3,4,,"]
复制代码

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

6.字符串删除:
str.delete([other_str]+) => new_str
"hello".delete "l","lo"#=> "heo""hello".delete "lo"#=> "he""hello".delete "aeiou", "^e"#=> "hell""hello".delete "ej-m"#=> "ho"

7.去掉前和后的空格
str.lstrip => new_str
" hello ".lstrip   #=> "hello ""hello".lstrip       #=> "hello"

8.字符串匹配
str.match(pattern) => matchdata or nil

9.字符串反转
str.reverse => new_str
"stressed".reverse   #=> "desserts"

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

11.转化成数字
str.to_i=> str
".to_i             #=> 12345

chomp和chop的区别:
chomp:去掉字符串末尾的\n或\r
chop:去掉字符串末尾的最后一个字符,不管是\n\r还是普通字符
复制代码
"hello".chomp            #=> "hello""hello\n".chomp          #=> "hello""hello\r\n".chomp        #=> "hello""hello\n\r".chomp        #=> "hello\n""hello\r".chomp          #=> "hello""hello".chomp("llo")     #=> "he""string\r\n".chop   #=> "string""string\n\r".chop   #=> "string\n""string\n".chop     #=> "string""string".chop       #=> "strin"
复制代码
转载自:http://blog.163.com/ma95221@126/blog/static/2482210220100159515220/ 

最新文章

  1. 【解决方案】 org.springframework.beans.factory.BeanCreationException: Error creating bean with name &#39;userHandler&#39;: Injection of resource dependencies failed;
  2. vim支持lua
  3. BZOJ 1624: [Usaco2008 Open] Clear And Present Danger 寻宝之路( 最短路 )
  4. 老李推荐:第6章3节《MonkeyRunner源码剖析》Monkey原理分析-事件源-事件源概览-命令翻译类
  5. Linux : screen 工具详解
  6. Linux内核中断和异常分析(上)
  7. 【windows下进程searchfilterhost.exe分析】
  8. poj2480(利用欧拉函数的积性求解)
  9. create-react-app 知识点
  10. HDU 1003 MAXSUM(最大子序列和)
  11. 【NOI】2017 蚯蚓排队(BZOJ 4943,LOJ 2303) 模拟+hash
  12. 容易出错的 if 语句
  13. python3.5 中Django框架连接mysql
  14. Spark(十)Spark之数据倾斜调优
  15. YOURLS&#39; API
  16. 【Unity笔记】获得鼠标点击屏幕的位置,并转成世界坐标
  17. eNSP 模拟器添加loopback本地回环口
  18. cogs 1075. [省常中2011S4] 最短路径问题
  19. 在Ubuntu Server上源码安装OpenERP 8.0,并配置wsgi和nginx运行环境
  20. ubuntu安装VMware Tools报错enter the path to the kernel header files

热门文章

  1. Flume NetCat Demo
  2. shell脚本中数组array常用技巧学习实践
  3. 《学习bash》笔记--调试shell程序
  4. linux 系统时间硬件时间同步
  5. tyvj-1460 旅行
  6. HDU1323_Perfection【水题】
  7. Html5 播放Hls格式视频
  8. CSS解决无空格太长的字母,数字不会自己主动换行的问题
  9. 封装CLLocationManager定位获取经纬度
  10. Net dll版本兼容问题