Swift 程序替换特定索引处的字符
要替换指定索引处的字符,Swift 支持以下方法:
使用 replaceSubrange() 方法。
使用 append() 方法。
使用 replacingCharacters(in:with:) 方法。
使用这些方法,您可以将给定字符串中的任何字符替换为新字符。例如
Input: String = "Pink Bike"
Index = 5 Character = "O"
Output: "Pink Oike "
这里,我们将索引 5 上的字符“B”替换为“O”。
方法 1:使用 replaceSubrange() 方法
要替换给定字符串中指定索引处的字符,我们可以使用 replaceSubrange() 方法。此方法用指定元素替换给定序列或集合中的一系列元素。
语法
func replaceSubrange(subRange: Range, with: NewElemens)
这里,replaceSubrange() 函数接受两个参数:
subRange - 我们要替换的一系列元素。它必须包含有效的起始和结束索引。
newElements - 将 subRange 替换成的新的元素。或者我们可以称之为替换元素。
算法
步骤 1 - 创建一个字符串。
步骤 2 - 使用 index() 函数查找要替换的字符的有效索引。
步骤 3 - 现在使用 replaceSubrange() 方法将指定的字符替换为新字符。
步骤 4 - 显示输出。
示例
在以下 Swift 程序中,我们将替换特定索引处的字符。因此,我们首先创建一个字符串。然后,我们使用 index() 函数查找要替换的字符的有效索引。之后,我们使用 replaceSubrange() 函数将原始字符替换为指定的新的字符。此函数接受两个参数:范围和新元素。因此,这里我们只替换一个字符,所以我们将 indexValue…indexValue 范围和新的字符“B”传递给它。最后,显示更新后的字符串。
import Foundation
import Glibc
var iStr = "My car color is yellow"
print("Original String:", iStr)
let indexValue = iStr.index(iStr.startIndex, offsetBy: 8)
iStr.replaceSubrange(indexValue...indexValue, with: "B")
print("Modified String:", iStr)
输出
Original String: My car color is yellow Modified String: My car cBlor is yellow
方法 2:使用 append() 方法
要替换给定字符串中指定索引处的字符,我们使用带有 enumerated() 方法的 for-in 循环。然后检查当前索引是否等于给定索引。如果是,则使用 append() 函数将原始字符替换为新字符。否则,为所有索引附加原始字符。
语法
func append(NewElement)
这里,append() 函数只接受一个参数,即新的字符或替换字符。
算法
步骤 1 - 创建一个字符串。
步骤 2 - 创建一个变量来存储索引。
步骤 3 - 创建另一个变量来存储新的字符。
步骤 4 - 创建一个空字符串来存储结果字符串。
步骤 5 - 现在使用 enumerated() 方法运行 for-in 循环以遍历每个字符及其各自的索引。
步骤 6 - 检查当前索引是否等于给定索引。如果是,则使用 append() 方法将该索引上的字符替换为新字符。
步骤 7 - 否则,将所有原始字符附加到新字符串中。
步骤 8 - 显示输出。
示例
在以下 Swift 程序中,我们将替换特定索引处的字符。因此,我们首先将创建一个新的字符串、索引和新的字符。然后创建一个空字符串来存储结果。之后,我们将运行一个 for-in 循环来遍历每个字符及其索引,并检查当前索引是否等于给定索引。如果是,则将原始字符替换为新字符并将其附加到结果字符串中。否则,将所有原始字符附加到结果字符串中。最后,显示更新后的字符串。
import Foundation
import Glibc
var inputStr = "Black clouds"
let indexVal = 4
let rChar: Character = "X"
var newStr = ""
for (x, char) in inputStr.enumerated() {
if x == indexVal {
newStr.append(rChar)
} else {
newStr.append(char)
}
}
print("Original String:", inputStr)
print("Modified String:", newStr)
输出
Original String: Black clouds Modified String: BlacX clouds
方法 3:使用 replacingCharacters() 方法
要替换给定字符串中指定索引处的字符,我们将使用 replacingCharacters() 方法。此方法返回一个新的字符串,其中指定的字符被给定的替换字符替换。
语法
func replacingCharacters(in:InputChar, with: ReplacementChar)
这里,replacingCharacters() 方法接受两个参数:
subRange - 我们要替换的一系列字符或字符。
ReplacementChar - 我们用来替换指定字符或一系列字符的替换字符。
算法
步骤 1 - 创建一个字符串。
步骤 2 - 使用 index() 函数查找要替换的字符的有效索引。
步骤 3 - 现在使用 replaceSubrange() 方法将指定的字符替换为新字符。
步骤 4 - 显示输出。
示例
在以下 Swift 程序中,我们将替换特定索引处的字符。因此,我们首先将创建一个新的字符串、索引和新的字符。然后创建一个空字符串来存储结果。之后,我们将使用 index() 函数指定起始索引和偏移量以到达所需的索引。然后,我们将使用 replacingCharacters() 方法将指定索引处的字符替换为“@”。并显示输出。
import Foundation
import Glibc
var StringVal = "Meeta is cooking Paratha"
let rCharacter: Character = "@"
let indexValue = 6
let outputStr = ""
print("Original String: ", StringVal)
let indexChar = StringVal.index(StringVal.startIndex, offsetBy: indexValue)..<StringVal.index(StringVal.startIndex, offsetBy: indexValue + 1)
let resultString = StringVal.replacingCharacters(in: indexChar, with: String(rCharacter))
print("Modified String: ", resultString)
输出
Original String: Meeta is cooking Paratha Modified String: Meeta @s cooking Paratha
结论
因此,这就是我们如何替换特定索引处的字符。所有方法都能有效地完成其工作。在使用 replaceSubrange() 和 replacingCharacters() 方法时,您还可以用新字符替换一系列字符,而使用 append() 方法只能替换指定索引处的一个字符。
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP