Swift程式:從給定字串中獲取字元
在Swift中,我們可以很容易地利用其對應的索引值從給定的字串中獲取字元。為了獲取指定字元的索引,Swift提供了一個名為index()的內建函式。此函式將返回一個索引,該索引與指定索引的指定距離相同。
示例
Input: String = "Ram got first place"
index = 5 Output: "o"
這裡,給定的索引值為5,因此結果字元為“o”。
語法
func index(x:String.index, offsetBy: Int)
這裡,x是序列的有效索引,offsetBy是偏移x的有效距離。並將返回從索引x偏移距離的索引。
演算法
步驟1 − 建立一個字串。
步驟2 − 宣告一個變數來儲存所需字元的索引。
步驟3 − 現在檢查給定的索引是否在有效範圍內。
步驟4 − 如果是,則使用index()函式查詢準確的索引以訪問指定位置的字元,然後使用下標表示法列印字元。
步驟5 − 如果不是,則顯示錯誤訊息。
示例1
在下面的Swift程式中,從給定的字串中獲取一個字元。為此,我們首先建立一個字串,然後指定我們想要的字元的索引。然後我們檢查給定的索引是否在範圍內。如果是,則我們使用index()函式查詢字元的準確索引,並使用下標表示法顯示結果字元。如果不是,我們將列印錯誤訊息。
import Foundation import Glibc let inputString = "Birds fly in the morning" let charIndex = 4 if charIndex < inputString.count { let charOutput = inputString[inputString.index(inputString.startIndex, offsetBy: charIndex)] print("Character at index \(charIndex) is \(charOutput)") } else { print("Recheck your index it is out of range") }
輸出
Character at index 4 is s
示例2
在下面的Swift程式中,從給定的字串中獲取一個字元。為此,我們首先建立一個字串,然後指定我們想要的字元的索引。然後我們使用index()函式計算字元的準確索引。此函式有兩個引數:起始索引(enteredString.StartIndex)和移動索引的偏移量。之後,我們將使用下標表示法從指定的索引獲取字元並顯示輸出。
import Foundation import Glibc let enteredString = "This is Swift tutorial" let charIndex = 8 let resCharIndex = enteredString.index(enteredString.startIndex, offsetBy: charIndex) let myChar = enteredString[resCharIndex] print("Character at index \(charIndex) is \(myChar)")
輸出
Character at index 8 is S
示例3
在下面的Swift程式中,使用prefix()和suffix()方法從給定的字串中獲取一個字元。為此,我們首先建立一個字串,然後指定我們想要的字元的索引。然後我們將使用prefix()方法提取從字串開頭到給定索引的子字串,然後使用suffix()方法提取包含最後一個字元的子字串。之後,我們將使用first屬性從子字串中獲取第一個字元並相應地顯示輸出。
import Foundation import Glibc var StringVal = "Meeta is cooking Paratha" let charIndex = 4 if let char = StringVal.prefix(charIndex + 1).suffix(1).first { print("The character at \(charIndex)th Index is '\(char)'.") } else { print("Invalid character index. Try again") }
輸出
The character at 4th Index is 'a'.
結論
這就是我們如何從給定字串中獲取字元的方法。如果給定的索引存在於有效範圍內,則兩種方法都會返回準確的結果。如果不是,則會得到錯誤。如果沒有索引值,您將無法從給定的字串中獲取字元,因此始終指定有效的索引。否則,您將收到錯誤。