Ruby字符串处理

ruby字符串处理方法

截取

单个字符

>> s = "hello"
=> "hello"
>> s[0]  # 第一个字符
=> "h"
>> s[s.length - 1] # 左边数字符串长度减1个,即最后一个字符,左边数下标从0开始
=> "o"
>> s[-1]  # 右边数第一个字符
=> "o"
>> s[-s.length]   # 右边数字符串长度个,即第一个字符
=> "h"
>> s[10]  # 索引超出范围
=> nil

子串

>> s = "hello"
=> "hello"
>> s[2..3]    # 位于索引2到3的字符
=> "ll"
>> s[-3..-1] # 可以使用负的索引值,代表从右向左
=> "llo"
>> s[0..0]    # 第一个字符
=> "h"
>> s[0..1]    # 前两个字符
=> "he"
>> s[2..1]    # 起始索引大于结束索引,为空字符串
=> ""
>> s[7..10]  # 索引超出范围
=> nil

替换

替换单个

>> s = "hello"
=> "hello"
>> s[0] = "H"  # 将第一个字符替换为新字符
=> "H"
>> s
=> "Hello"
>> s[-2] = "L" # 将右边数第2个字符替换为新字符
=> "L"
>> s
=> "HelLo"
>> s[-1] = "UU" # 将右边数第1个字符替换为新字符集
=> "UU"
>> s
=> "HelLUU"
>> s[10] = "U"  # 抛出异常,索引超出范围
IndexError: index 10 out of string

替换子集

>> s = "hello"
=> "hello"
>> s[-2..-1] = "pas"  # 将从右数第2到第1个字符替换为新值
=> "pas"
>> s
=> "helpas"
>> s[0..0] = "please "  # 将第一个字符替换为新值
=> "please "
>> s
=> "please elpas"
>> s[6..10] = ""  # 将第6到10个字符替换为空值,即删除子串
=> ""
irb(main):029:0> s
=> "pleases"

包含

>> s = "hello"
=> "hello"
>> s["el"]  # 测试是否包含子串,包含的情况
=> "el"
>> s["LL"]  # 不包含的情况
=> nil
>> while(s["l"])   # 循环测试,将匹配到的所有子串替换为新值
>> s["l"]="L"
>> end
=> nil
>> s
=> "heLLo"

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 字符串处理函数1.返回字符串的长度 str.length => integer 2.判断字符串中是否包含另一个串 ...
    小安静子阅读 4,531评论 0 1
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 10,024评论 0 5
  • 1 Python 字符串的 CRUD 操作 1.1 创建字符串 字符串是 Python 中最常用的数据类型。我们可...
    藕丝空间阅读 4,243评论 0 1
  • 本文介绍 Ruby 基本的数据类型,主要参考《Ruby编程语言》。Ruby支持的数据类型包括基本的Number、S...
    零小白阅读 14,182评论 0 11
  • 一、字符串在C#中,字符串是一系列不可修改的Unicode字符,创建字符串后,就不能修改它。要创建字符串,最常用的...
    CarlDonitz阅读 5,108评论 0 2

友情链接更多精彩内容