第 3.2.8 節:字串處理操作
歡迎來到編程中最實用的部分之一!在計算機科學中,字串(String)就是一系列字元的組合。它可以是一個單字、一句完整的句子,甚至像 "P@ssw0rd123" 這樣的密碼。由於我們使用的數據中,大部分(如用戶名稱、地址和訊息)都是文字格式,因此掌握如何處理字串是一項至關重要的技能。
在本指南中,我們將介紹程式設計師用來「處理」字串的工具。如果起初覺得有點抽象也不用擔心,只要掌握當中的規律,就會發現它就像玩積木一樣簡單!
1. 測量字串:長度 (Length)
長度 (Length) 操作可以告訴你字串中到底有多少個字元。這包括字母、數字、標點符號,甚至包括空格!
類比:將字串想像成一串珠子項鍊。長度就是這條線上所有珠子的總數。
例子:
如果字串是 "Computer Science"
它的長度是 16(15 個字母加上 1 個空格)。
小貼士:千萬別忘了計算空格!它們也是字元的一種。
2. 尋找字元:位置 (Position)
位置 (Position) 操作可以告訴你某個特定字元在字串中的具體位置。不過,在編程中有一條你必須銘記的黃金法則:
黃金法則:電腦是從 0 開始數的!
我們稱之為「基於 0 的索引 (Zero-based indexing)」。第一個字元位於位置 0,第二個字元位於位置 1,依此類推。
記憶口訣:「從零開始,編程英雄!」
例子:
對於字串 "PYTHON":
'P' 位於位置 0
'Y' 位於位置 1
'N' 位於位置 5
3. 截取片段:子字串 (Substring)
子字串 (Substring) 是長字串中的一小部分。你可以透過告訴電腦從哪個位置開始,以及需要截取多少個字元,來「提取」文字片段。
類比:想像你有一條長長的果汁軟糖條。如果你從中間撕下一小塊,那一小塊就是你的子字串。
步驟說明:
1. 確定起始位置(記得從 0 開始數!)。
2. 決定你想要「切出」多少個字元。
例子:
字串:"Chocolate"
操作:截取從位置 0 開始,長度為 4 的子字串。
結果:"Choc"
4. 連接字串:串聯 (Concatenation)
串聯 (Concatenation) 是一個聽起來很高級的詞,意思就是「將字串連接在一起」。在許多編程語言中,我們使用 + 符號來執行此操作。
類比:就像將兩節火車車廂連接起來,組成一列更長的火車。
例子:
字串 A:"Hello"
字串 B:"World"
串聯 (A + B):"HelloWorld"
注意:如果你想要中間有空格,必須自己加上去:A + " " + B = "Hello World"。
快速回顧:
• Length (長度):總共有多少個字元?
• Position (位置):它在哪裡?(從 0 開始!)
• Substring (子字串):文字的「切片」。
• Concatenation (串聯):將字串黏在一起。
5. 字元與秘密代碼
電腦實際上並不理解字母,它們只理解數字。鍵盤上的每個字元都有一個「秘密代碼」(通常基於 ASCII 或 Unicode 編碼)。
將字元轉換為字元代碼:
這會將字母轉換為對應的數字。
例子:在 ASCII 中,'A' 變為 65。
將字元代碼轉換為字元:
這會將數字轉回字母。
例子:代碼 97 會轉為 'a'。
你知道嗎?大寫字母和小寫字母有不同的代碼!對電腦而言,'A' (65) 與 'a' (97) 是完全不同的。
6. 字串轉換操作 (Casting)
有時候,我們將數字儲存為文字(字串),但我們需要將其轉換為真正的數字,以便進行數學計算。這稱為轉換 (Conversion) 或 轉型 (Casting)。
課程要求你掌握這四種轉換:
1. 字串轉整數 (String to Integer):"10" 變為 \( 10 \)。(現在你可以對它進行加減法了!)
2. 字串轉實數 (String to Real):"10.5" 變為 \( 10.5 \)。
3. 整數轉字串 (Integer to String):\( 50 \) 變為 "50"。(現在你可以將它與其他文字連接起來!)
4. 實數轉字串 (Real to String):\( 3.14 \) 變為 "3.14"。
要避免的常見錯誤:嘗試對字串進行數學運算!如果你嘗試在未進行轉換的情況下計算 "10" + 5,電腦會感到困惑並顯示錯誤。
章節總結:重點摘錄
• 字串是由一系列字元(包括空格)組成的。
• 索引 (Indexing) 永遠從 0 開始。
• 使用 length 來檢查密碼長度是否足夠。
• 使用 concatenation 來組建要顯示給用戶看的訊息。
• 當你需要進行計算,或者要在文字與數字間切換時,請使用 conversion (casting)。