阿太棒了,Code的顯示換了,變得比較清楚了!我可以不用慢慢截圖了!!!
昨天提到了數字,發現Ruby替數做的分類與生活中不太相同,那文字呢?今天來說說Ruby資料型別中的文字。
※加上單引號的字串
'-字-字-字-字-字-字-字-' # 一堆字被串起來,就是字串。
Ruby會認單引號來當作字串的開始跟結尾,但是如果字串裡需要出現單引號怎麼辦?
'安安你好嗎?I'm fine!'
Ruby看見的字串只有 ' 安安你好嗎?I ' ,還有後面的字串開頭 ' ,這時候執行程式碼,他會以為你還沒打完,執行時沒有效果!所以為了避免這種問題,就需要在字串裡的單引號前,加上倒斜線(backslash)來避開才行:
'安安你好嗎?I\'m fine!' #仔細看I'm改成I\'m!
執行結果為 => "安安你好嗎?I'm fine!" #它會自動把斜線拿掉!
那如果字串裡想畫個像『/( ' V ' )/』這樣子的表情符號該怎麼寫呢XD?
'/( \' V \' )/' #就把兩個眼睛前面都加上反斜線就好!
執行結果為 => "/( ' V ' )/"
這種單引號的字串可以跨很多列,如果你字比較多想要分行寫,你可以:
'安安,
你好!
天氣真不錯!' #因為Ruby都只認單引號當開頭與結尾,所以他自動會幫忙轉成一行,但...
執行結果為 => "安安,\n你好!\n天氣真不錯!"
字串裡面被包了奇怪的東西『\n』,那是換列字符,如果想要字串裡乾淨一些,可以再派出反斜線:
'安安,'\ #這行行尾要加上反斜線規避
'你好!'\ #這行也要加
'天氣真不錯!' #最後一行可別加!加了他就不知道你到結尾了~
執行結果為 => "安安,你好!天氣真不錯!"
※加上雙引號的字串
比起單引號,雙引號彈性多了!雙引號最厲害的是可以在字串裡面插入任意的Ruby運算式(在Ruby中稱為**『字串安插(string interpolation)』**),不過這些運算式,要被放在『 #{ } 』裡面,例如:
"我喜歡吃#{1+1}個便當!"
執行結果為 => "我喜歡吃2個便當!"
這好處有很多很多,譬如可以先定義一個變數,再把變數放入字串裡面:
a = 'Ruby!' #先設個變數a等於字串Ruby
"我喜歡:#{a*3}"
執行結果為 => "我喜歡Ruby!Ruby!Ruby!"
雙引號字串還有另一個特色,就是支援了一些倒斜線規避序列(backslash escape sequence),例如:
"\n" #代表換列(Newline)
"\t" #代表跳格(Tab)
"\s" #代表空格(Space)
"國父\s孫中山先生"
執行結果為 => "國父 孫中山先生
除了上述提到三個之外,還有很多,有興趣的朋友可以參考這裡。
但其實,當字串裡有出現撇號或引號時,很難直接拿來使用,一直規避就飽了(就像前面的文字符號一樣,很麻煩),所以Ruby又發明了兩個語法來支援這種狀況:『 %q 』與『 %Q 』。
%q(我是安妮 I'm Annie)
執行結果為 => "我是安妮 I'm Annie"
%Q(我是安妮,我今天吃#{1+1}碗!)
執行結果為 => "我是安妮,我今天吃2碗!"
%Q(/( ' V ' )/)
執行結果為 => "/( ' V ' )/"
趴小Q,作用跟加上單引號相同;趴大Q,作用跟加上雙引號相同!這樣是不是方便很多呢(大心)!
=================================================
來到第六天了,今天要對自己說的,跟昨天的有點像XD不是偷懶啊,是剛好喜歡這簡簡單單的話:
Do more of what makes you happy.
字串的部分還沒說完,還有字串的運算規則與迭代等等的,繼續努力!
為什麼可以寫出黑底白字?
bbcode怎麼寫?
從這個網址:
http://ithelp.ithome.com.tw/question/10158406
啊樓下的@roger03說的沒錯~因為鐵人賽的編輯器可以選擇文字背景顏色!
沒辦法寫inline code,只好這麼做了XD“
這是鐵人賽編輯器畫面:
如果你需要他的原始碼的話,這是它自動產生的原始碼,有點醜,不過我完全複製過來給你參考!
<pre class="c" name="code"><span style="color:rgb(255, 255, 255)"><span style="background-color:rgb(0, 0, 0)">'安安你好嗎?'</span></span>
[註]『'』是指單引號。
阿不好意思我看到你需要的是BBCode,因為我沒用過,不過我查了一下,下面貼的是背景色BBCode,你參考看看!(參考連結)
<pre class="c" name="code">[bg=black]
This background will be black
[/bg]
因為沒試過,我偷偷在這邊試試看,看能不能巢狀使用XD
<span style="color: #ffffff;">[bg=#000000]
TEST TEST 請給我黑底白字!
[/bg]</span>
阿,上面留言請反白Orz,看來這裡只有支援白字,不支援黑底...囧"
希望有幫到你XD"
@twtw, @羅傑 原來在這個網址的逐一回應,在鐵人賽頁面是看不到的@@,我把回覆都貼在這裡囉:http://ithelp.ithome.com.tw/question/10158406,希望有幫助XD