亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Ruby > 正文

Ruby中創建字符串的一些技巧小結

2020-10-29 19:43:08
字體:
來源:轉載
供稿:網友

%{String}  用于創建一個使用雙引號括起來的字符串
%Q{String} 用于創建一個使用雙引號括起來的字符串

復制代碼 代碼如下:

str=<<END_OF_STRING
  a string
  END_OF_STRING

%Q!Some String of “Characters”! <==> ” Some String of /”Characters/” “

%q{String} 用于創建一個使用單引號括起來的字符串

%q!Some String of “Characters”! <==> ‘Some String of Characters'

%r{String} 用于創建一個正則表達式字面值

%r{/usr/bin/} <==> ///usr//bin///
%w{String} 用于將一個字符串以空白字符切分成一個字符串數組,進行較少替換
%W{String} 用于將一個字符串以空白字符切分成一個字符串數組,進行較多替換

%W(North South East West) <==> ["North", "South", "East", "West"]

%s{String} 用于生成一個符號對象
%x{String} 用于執行String所代表的命令

%x{ ls /usr/local } <==> `ls /usr/local`

PS:上面幾個%表示法中用{}擴住了String,其實這個{} 只是一種分割符,可以換成別的字符,比如(),那么%表示法就是%(String),當然還可以是別的字符,對于非括號類型的分割符,左右兩邊要相同, 如%!String!

下面我對這些表示法簡單舉幾個例子:

%{String}用于創建一個使用雙引號括起來的字符串
這個表示法與%Q{String}完全一樣,這邊直接句個例子看結果:

復制代碼 代碼如下:

result = %{hello} 
puts "result is: #{result}, Type is:#{result.class}" 

結果: result is: hello, Type is:String

%Q{String}用于創建一個使用雙引號括起來的字符串
%q{String}用于創建一個使用單引號括起來的字符串

從說明中可以看出這兩個表示法的區別就是一個使用雙引號,一個使用單引號。使用雙引號的字符串會對字符串中的變量做較多替換,而單引號則做較少的替換,具 體看例子。先看%Q{String}:

復制代碼 代碼如下:

world = "world" 
result = %Q{hello #{world}} 
puts "result is: #{result}, Type is:#{result.class}" 

結果: result is: hello world, Type is:String

換成%q{String}:

復制代碼 代碼如下:

world = "world" 
result = %q{hello #{world}} 
puts "result is: #{result}, Type is:#{result.class}" 

結果:

result is: hello #{world}, Type is:String

從上面的結果可以看出,較少替換的情況下,#{world}被解析成了字符串,而不會去計算這個變量中的值。

%r{String}用于創建一個正則表達式字面值
就像使用/reg/方式一樣,看代碼:

復制代碼 代碼如下:

result = %r{world} 
puts result =~ "hello world" 
puts "result is: #{result}, Type is:#{result.class}" 

結果: 6

result is: (?-mix:world), Type is:Regexp

可以看出,world從第6個字符開始匹配

%w{String}用于將一個字符串以空白字符切分成一個字符串數組,進行較少替換
%W{String}用于將一個字符串以空白字符切分成一個字符串數組,進行較多替換

這兩個應該是大家見過最多的,用這個方式構造數組,可以省下一些逗號,Ruby真 是會慣壞大家,以后大家都不用標點符號了。

同樣給一個簡單的例子:

復制代碼 代碼如下:

result = %w{hello world} 
puts "result is: #{result}, Type is:#{result.class}, length is:#{result.length}" 

結果: result is: helloworld, Type is:Array, length is:2

%s{String}用于生成一個符號對象

直接先上代碼:

復制代碼 代碼如下:

result = %s{hello world} 
puts "result is: #{result}, Type is:#{result.class}" 
sym = :"hello world" 
puts "the two symbol is the same: #{sym == result}" 

結果:

result is: hello world, Type is:Symbol
the two symbol is the same: true

可以看出,這兩中方式生成的symbol對象完全一樣

%x{String}用于執行String所代表的命令

比如:

%x{notepad.exe}可以啟動windows下的記事本,這里我就不列結果了(那是一個大家熟悉的窗口)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩久久免费视频| 亚洲天堂男人天堂女人天堂| 日韩精品在线观看网站| 在线日韩日本国产亚洲| 国产精品日韩久久久久| 欧美日韩中文字幕在线| 精品久久久久久久久国产字幕| 亚洲色图偷窥自拍| 国产精品电影观看| 亚洲成人av在线| 国产精品一区二区av影院萌芽| 国产精品视频久| 国产精品91视频| 久久久亚洲欧洲日产国码aⅴ| 欧美国产在线电影| 亚洲一区二区三区香蕉| 久久久久久久久爱| 久久久久久久久91| 日韩在线观看免费网站| 亚洲精品视频在线播放| 欧美激情xxxx| 亚洲精品一区在线观看香蕉| 欧美日韩免费在线观看| 91美女福利视频高清| 欧美大片va欧美在线播放| 亚洲自拍小视频| 成人av电影天堂| 国产精品日韩欧美综合| 热久久99这里有精品| 日韩视频免费大全中文字幕| 日韩精品在线观看一区二区| 亚洲最大福利视频网站| 国产精品爱啪在线线免费观看| 热久久这里只有精品| 国产成人综合精品在线| 97在线视频免费看| 亚洲电影免费观看高清完整版在线| 欧美成人精品在线| 日韩动漫免费观看电视剧高清| 国产成人啪精品视频免费网| 亚洲免费视频一区二区| 色老头一区二区三区在线观看| 国产乱人伦真实精品视频| 精品视频久久久久久| 国产97在线观看| 成人97在线观看视频| 国产亚洲精品久久久久动| 久久精品国产v日韩v亚洲| 亚洲91精品在线| 国产在线999| 欧美视频免费在线| 国产性色av一区二区| 欧美日韩电影在线观看| 色小说视频一区| 久久亚洲一区二区三区四区五区高| 国产福利视频一区二区| 国产精品丝袜久久久久久高清| 日韩a**中文字幕| 欧美国产极速在线| 欧美日韩免费观看中文| 日韩高清电影免费观看完整版| 亚洲成人中文字幕| 在线观看精品自拍私拍| 97免费视频在线| 国产盗摄xxxx视频xxx69| 日韩成人激情影院| 日韩欧美国产视频| 日韩欧美在线字幕| 欧美激情第一页xxx| 日韩在线播放一区| 久久精品中文字幕| 国产精品久久久久久久久久小说| 8090理伦午夜在线电影| 欧美肥老妇视频| 韩曰欧美视频免费观看| 精品成人av一区| 精品偷拍一区二区三区在线看| 国产suv精品一区二区| 日韩欧美在线观看| 这里精品视频免费| 一本久久综合亚洲鲁鲁| 成人午夜一级二级三级| 色妞在线综合亚洲欧美| 国产成人综合久久| 国语自产精品视频在线看抢先版图片| 国产欧美日韩综合精品| 日韩有码片在线观看| 亚洲性夜色噜噜噜7777| 一本色道久久88综合日韩精品| 久久精品亚洲一区| 日韩av影院在线观看| 国产在线999| 亚洲另类激情图| 亚洲国产精品悠悠久久琪琪| 91网站在线免费观看| 日韩欧美在线免费观看| 国产香蕉一区二区三区在线视频| 亚洲在线www| 久久韩国免费视频| 一本色道久久88综合日韩精品| 成人性生交大片免费观看嘿嘿视频| 亚洲自拍另类欧美丝袜| 2019中文字幕在线免费观看| 亚洲精品免费网站| 亚洲大胆人体视频| 自拍偷拍亚洲一区| 亚洲视频在线视频| 亚洲精品视频免费在线观看| 国产一区二区视频在线观看| 欧美极度另类性三渗透| 国产精品视频自在线| 亚洲国产小视频在线观看| 色综合天天综合网国产成人网| 亚洲电影成人av99爱色| 中文字幕精品一区久久久久| 精品中文字幕在线2019| 欧美一级在线播放| 国产精品av在线| 成人黄在线观看| 国产一区二区三区在线| 6080yy精品一区二区三区| 亚洲人午夜精品免费| 中文字幕亚洲二区| 国产成人精品日本亚洲专区61| 国产精品欧美在线| www.久久草.com| xvideos国产精品| 欧美一级大片在线观看| 亚洲精品美女久久| 蜜臀久久99精品久久久久久宅男| 亚洲欧美第一页| 高清欧美一区二区三区| 欧美性xxxx极品hd欧美风情| 亚洲一区中文字幕在线观看| 精品日韩中文字幕| 日韩av中文字幕在线播放| 精品视频在线播放| 欧美精品激情blacked18| 91久久久久久久一区二区| 欧美制服第一页| 日韩欧美亚洲成人| 国产99久久精品一区二区永久免费| 欧美中文字幕在线播放| 成人亚洲综合色就1024| 欧洲成人免费aa| 亚洲xxx大片| 日韩精品一二三四区| 欧美高清一级大片| 久久精品亚洲热| 国产97在线观看| 亚洲综合最新在线| 麻豆精品精华液| 国产一区二区三区毛片| 欧美中文在线视频| 欧美极品少妇xxxxⅹ喷水| 4438全国亚洲精品在线观看视频| 92版电视剧仙鹤神针在线观看| 国产不卡在线观看| 久久亚洲成人精品| 欧美老少做受xxxx高潮| 国产精品91在线| 最新中文字幕亚洲| 最好看的2019年中文视频| 日韩高清中文字幕|