文本与字符串一般我们会使用双引号将文本括起来,如 puts “Hello,Word!”,字符串是一组任意长度的文本字符(包括数字、字母、空格、符合)的集合。在Ruby中所有的字符串都是String类的对象,正如调用字符串的 class方法,如 puts “Hello, Word!”.class引号只适合于单行文本,如果想包含多行文本,使用%q{文本}的方法,文本的分解符可以使用、()或自选两个分界符如 !和!,如果所引用正文中一旦有!,就会导致这种方法出错,所以要慎重选用!分界符。如:x = %q{This is a test of the multi line capabilities}或 x = %q!This is a test of the multi line capabilities!分界符可用多个字符,如 irb(main):018:0> x =irb(main):019:0" This is the stringirb(main):020:0" And a second lineirb(main):021:0" END_MY_WORD=> "This is the string\nAnd a second line\n"irb(main):022:0> puts xThis is the stringAnd a second line=> nil字符串的表达式字符串的乘法操作,即将字符串复制多次如:puts “abc”*5irb(main):027:0> puts "abc" * 5abcabcabcabcabc=> nil查看字符的ASCII码值,通过puts ?字符如:puts ?xirb(main):028:0> puts ?x120=> nil与其相反的是 puts 120.chr 方法,可查看是哪个字符irb(main):032:0> puts 120.chrx=> nil插写插写的方法:#{变量}如:x = "cat"puts "The #{x} in the hat"irb(main):034:0> x = "cat"=> "cat"irb(main):035:0> puts "The #{x} is in the hat"The cat is in the hat=> nil可通过其它方式实现插写的结果:to_s (将数字转换成字符串)如:irb(main):054:0> x = 10=> 10irb(main):055:0> y = 20=> 20irb(main):056:0> puts  x.to_s + " + " + y.to_s + " = " + (x + y).to_s10 + 20 = 30=> nilirb(main):057:0> puts "#{x} + #{y} = #{x + y}"10 + 20 = 30=> nil字符串的方法汇总+ 连接两个字符串capitalize  首字母大写  “test”.capitalizedowncase   将所有字母转换成小写  “TEst”.downcasechop  去掉最后一个字符   “Test”.chophash  输出字符串的哈希值next  将最后一个字符串替换为下一个字符串reverse  倒序输出字符串sum    求字符串的ASCII值的和swapcase 将字符串大小写切换upcase   字符串全部大写upcase.reverse  将字符串全部大写并倒序输出upcase.reverse.next 将字符串全部大写并倒序,且将最后一个字符串替换为下一个字符串length  取字符串的长度   
09-04 12:00