Ruby教程
Ruby控制语句
Ruby高级

Ruby 字符串

Ruby 字符串

Ruby 字符串对象保存和操作任意字节序列,通常表示字符。它们是使用 String::new 或作为文字创建的。

引号

Ruby 字符串文字用单引号和双引号括起来。
示例:
#!/usr/bin/ruby puts 'Hello everyone' puts "Hello everyone"
输出:
Ruby string 1


访问字符串元素

您可以借助方括号 [] 访问不同部分的 Ruby 字符串元素。在方括号内写入索引或字符串。
示例:
#!/usr/bin/ruby msg = "this tutorial is from lidihuo." puts msg[ "lidihuo"] puts msg[ "tutorial"] puts msg[0] puts msg[0, 2] puts msg[0..19] puts msg[0, msg.length] puts msg[-3]
输出:
Ruby string 2


多行字符串

在 Ruby 语言中编写多行字符串非常简单。我们将展示三种打印多行字符串的方法。
字符串可以写在双引号内。 使用了 % 字符并且字符串包含在/字符内。 在 heredoc 语法中,我们使用 < <并且字符串包含在单词 string 中。< span>
示例:
puts " A AB ABC ABCD" puts %/ A AB ABC ABCD/ puts <<STRING A AB ABC ABCD STRING
输出:
Ruby string 3


变量插值

Ruby 变量插值是用字符串文字内的值替换变量。变量名放在字符串文字中的 #{ 和 } 字符之间。
示例:
#!/usr/bin/ruby coun try = "India" capital = "New Delhi" puts "#{capital} is the capital of #{country}."
输出:
Ruby string 4


连接字符串

Ruby 连接字符串意味着从多个字符串创建一个字符串。您可以通过连接将多个字符串连接起来形成单个字符串。
有四种方法可以将 Ruby 字符串连接成单个字符串:
在字符串之间使用加号。 在字符串之间使用一个空格。 在字符串之间使用< <登录。< span> 在字符串之间使用 concat 方法。
示例:
#!/usr/bin/ruby string = "this is Ruby Tutorial" + " from lidihuo." + " Wish you all good luck." puts string string = " this is Ruby Tutorial" " from lidihuo." " Wish you all good luck." puts string string = " this is Ruby Tutorial" << " from lidihuo." << " Wish you all good luck." puts string string = " this is Ruby Tutorial". concat("from lidihuo. ").concat("Wish you all good luck.") puts string
输出:
Ruby string 5


冻结字符串

在大多数编程语言中,字符串是不可变的。这意味着不能修改现有字符串,只能从中创建一个新字符串。
在 Ruby 中,默认情况下字符串不是不可变的。为了使它们不可变,可以使用冻结方法。
示例:
#!/usr/bin/ruby str = "Original string" str << " is modified " str << "is again modified" puts str str.freeze #str << "And here modification will be failed after using freeze method"
输出:
Ruby string 6

在上面的输出中,我们使用冻结方法使字符串不可变。最后一行被注释,因为不能进一步修改任何字符串。
通过取消对最后一行的注释,我们将得到如下输出所示的错误。
输出:
Ruby string 7


比较字符串

Ruby 字符串可以用三个运算符进行比较:
使用 == 运算符: 返回真或假 用 eql?运算符: 返回真或假 使用 casecmp 方法: 如果匹配则返回 0,如果不匹配则返回 1
示例:
#!/usr/bin/ruby puts "abc" == "abc" puts "as ab" == "ab ab" puts "23" == "32" puts "ttt".eql? "ttt" puts "12".eql? "12" puts "Java".casecmp "Java" puts "Java".casecmp "java" puts "Java".casecmp "ja"
输出:
Ruby string 8

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4