Swift 程序从右侧修剪字符串

swiftserver side programmingprogramming更新于 2025/9/19 14:52:17

在 Swift 中,我们可以通过从给定字符串的右侧修剪指定数量的字符来调整字符串的大小。或者,我们也可以使用以下方法修剪给定字符串右侧不需要的多余空格 -

方法 1:从右侧修剪字符串

为了从字符串右侧修剪指定数量的字符或子字符串,我们创建一个用户定义函数,该函数接受一个输入字符串和我们想要从输入字符串右侧删除的字符的长度作为参数,并返回一个生成的新字符串。

示例

输入:String = "Ram got first place" trimLength = 5
输出:"Ram got first "

此处,在生成的字符串中,由于 trimLength 的大小为5.

算法

  • 步骤 1 − 创建一个函数,该函数接受输入字符串和 trimLength 作为参数。

  • 步骤 2 − 现在,此函数首先检查 trimLength 是否大于或等于输入字符串的大小。如果是,则返回原始字符串。

  • 步骤 3 - 如果不是,则使用 index() 函数查找新索引,即字符串 endIndex 左侧第 "trimeLength" 个字符。

  • 步骤 4 - 然后使用范围运算符创建一个新字符串,其中包含从第一个索引到新索引的所有字符。

  • 步骤 5 - 返回新的结果字符串。

  • 步骤 6 - 创建一个字符串。

  • 步骤 7 - 创建一个变量并存储我们要从输入字符串右侧删除的长度。

  • 步骤 8 - 调用函数并将 string 和 trimLength 作为参数传递

  • 步骤 9 - 显示输出。

示例

在下面的 Swift 程序中,我们将从右侧修剪字符串。因此,我们创建一个函数,该函数接受一个字符串和我们想要从右侧修剪的长度作为参数。然后,它将检查修剪长度是否大于或等于字符串的长度。如果是,则不修剪字符串,并返回原始字符串。如果不是,则该函数使用 index() 函数计算我们要从中修剪的索引。然后使用 String() 初始化器以及 partialRangeUpTo 参数 ([..<Index]) 创建从原始字符串到计算出的 trimIndex 的子字符串。最后,显示更新后的字符串。

import Foundation
import Glibc

func trimRightString(str: String, trimlength: Int)-> String{
   if trimlength >= str.count
   {
      return str
   }
   
   let trimIndex = str.index(str.endIndex, offsetBy: -trimlength)
   let newStr = String(str[..<trimIndex])
    
   return newStr
}

let s = "Ram likes Swift"
let result = trimRightString(str: s, trimlength: 9)
print("原始字符串:", s)
print("修剪后的字符串(右侧):", result)

输出

原始字符串:Ram likes Swift
修剪后的字符串(右侧):Ram li

方法 2:从右侧修剪空格

在 Swift 中,我们也可以删除输入字符串右侧的空格。为此,我们创建一个用户定义函数,该函数将输入字符串作为参数,并返回一个右侧不包含空格的新字符串。

示例

Input: String = "Ram got first place  "
           
Output: "Ram got first place"

此处,输入字符串右侧包含两个空格,因此我们使用该函数创建一个右侧没有空格的新字符串。

算法

  • 步骤 1 - 创建一个以输入字符串作为参数的函数。

  • 步骤 2 - 现在,此函数首先使用 endIndex 属性计算最后一个索引。

  • 步骤 3 - 然后运行一个 while 循环,从字符串末尾向后迭代,直到到达第一个非空格字符。

  • 步骤 4 - 使用范围运算符创建一个包含从第一个索引到新索引的所有字符的新字符串。

  • 步骤 5 - 返回新的结果字符串。

  • 步骤 6 - 创建一个字符串。

  • 步骤 7 - 调用函数并将输入字符串作为参数传递。

  • 步骤 8 - 显示输出。

示例

在下面的 Swift 程序中,我们将从右侧修剪空格。因此,我们创建一个以字符串作为参数的函数。然后,它计算输入字符串的最后一个索引。之后,它将运行一个 while 循环,从字符串末尾向后迭代,直到遇到第一个非空格字符。然后,它使用 String() 初始化器以及 partialRangeUpTo 参数 ([..<Index]) 创建一个新字符串,该字符串仅包含从原始字符串起始位置到计算出的 eIndex 位置的字符。最后,显示更新后的字符串。

import Foundation
import Glibc

func trimString(iStr: String) -> String {
   var eIndex = iStr.endIndex
   while eIndex > iStr.startIndex && iStr[iStr.index(before: eIndex)].isWhitespace {
      eIndex = iStr.index(before: eIndex)
   }
   let newStr = String(iStr[..<eIndex])
   return newStr
}

let oString = "   Execute Swift Program   "

let resString = trimString(iStr:oString)

print("原始字符串:\"\(oString)\"")
print("修剪后的字符串:\"\(resString)\"")

输出

原始字符串: "   Execute Swift Program   "
修剪后的字符串: "   Execute Swift Program"

结论

以上就是我们如何从右侧修剪字符串。如果您想从输入字符串的右侧删除一个字符串,则可以使用方法 1。或者,如果您只想从输入字符串的右侧删除空格,则可以使用方法 2。这两种方法都有效,并且可以从输入字符串的右侧修剪一些字符,无论是空格字符还是非空格字符。



相关文章



关于我们 | 隐私条款 | 学习路线
返回顶部