ruby分割字串 Ruby字串

2021-10-21 08:05:27 字數 2104 閱讀 1519

構建方法

str = 'hello world' # 只允許`\\`與`\'`轉義

str = "hello world" # 允許所有轉義和`#{}`字串拼接

str = %q/hello world/ # 等同單引號

str = %q # 等同雙引號

str=<

hello world

eosstr = "abc" * 2 # => "abcabc"

索引str = "abc"

s = str[-1] # s => 'c'

s1 = str[2] # s1 => 'c' ,ruby中的字元視為整數

s2 = str[1,2] # s2 => "bc" ,表示從1下標開始去長度2的兩個字元

s3 = str[1..2] # s3 => "bc" ,下標從1取到2

操作方法

給定字串str = "abc"

空字元嗎

str.empty? # => false

長度str.length # => 3

str.size # => 3

刪除換行符

str.chop # => "ab" 無條件切除最後乙個字元

str.chomp # => "abc" 若行末為換行符則刪除

str1 = "abc\n"

str1.chomp # => "abc"

str1.chop # => "abc"

# 破壞性刪除使用,str1.chomp! str1.chop!,即引用刪除並返回

刪除前後空白

str1 = " abc "

str1.strip # => "abc"

找指定字串索引

str.index(a) # => 0,從左向右索引,索引從0開始

str.rindex(a) # => 3 ,從右向左索引,索引從1開始

包含指定子串嗎

str.include? "ab" # => true

指定位置插入

str.insert(1,"dd") # => "addbc", 1下標字元前插入

str.insert(-1."dd") # => "abcdd", 倒數第n字元後插入

替換# 用法

# str.gsub(pattern, replacement) => new_str

# str.gsub(pattern) => new_str

str.gsub(/[aeiou]/, '*') # => "*bc" #將母音替換成*號

str.gsub(/([aeiou])/, '') # => "bc" 將母音加上尖括號,\1表示匹配字元

str.gsub(/[aeiou]/) #=> "104 101 108 108 111 "

str.replace "abca" # str => "abca",重定義字串

# 單次替換,用法與gsub相同,但僅替換第一次匹配

str1 = "aaaa"

str1.sub(/[aeiou]/,'d') # => "daaa"

刪除# 查詢刪除

str.delete "b" # => "ac",引數為字串

# 索引方式刪除

str.slice!(-1) == str.slice!(2) # => true

s = str.slice!(1,2) # s=> "a", 用法 => str.slice(index,len)

s1 = str.slice!(1..2) # s1 => "a", 用法 => str.slice!(index_begin..index_end)

分割為陣列

str1 = "11:22:33:44"

column = str1.split(/:/) # column=> ["11", "22", "33", "44"]

翻轉str.reverse # => "cba"

大小寫轉換

str1 = str.upcase # str1 => "abc"

str1.downcase # => "abc"

str.swapcase # => "abc" 大寫變小寫,小寫變大寫

str.capitalize # => "abc" 首字母大寫,其餘小寫

Ruby字串操作

ruby提供了強大的字串操作能力。字串合併 可以使用常見的 cn 123 45 puts cncn 789 是連線操作,就是將 789 新增到cn中。字串還可以用 來表示複製次數。puts abc 3 一些字串函式 captitalize 首字母大寫 swapcase strip 去掉首尾空格 ls...

ruby字串替換

第一種 my name is 內是乙個ruby表示式,ruby解析表示式並呼叫返回值的to s方法得到結果 第二種 here document 結構。name bob mail welcome end最終mail裡的name表示式會被bob替代 第三種 c語言的printf style字串 temp...

Ruby 字串處理

ruby將字串像數字一樣處理.我們用單引號 或雙引號 將它們括起來.ruby abc abc ruby abc abc 單引號和雙引號在某些情況下有不同的作用.乙個由雙引號括起來的字串允許字元由乙個前置的斜槓引出,而且可以用 內嵌表示式.而 單引號括起來的字串並不會對字串作任何解釋 你看到的是什麼便...