Swift 程序用于从字符串两端裁剪


在 Swift 中,我们可以通过从字符串两端裁剪指定数量的字符来调整字符串的大小。或者,我们还可以使用以下方法从原始字符串的两端裁剪掉我们不需要的多余空格。

方法 1:从两端裁剪字符串

为了从字符串的两端裁剪指定数量的字符或子字符串,我们创建了一个用户定义的函数,该函数以输入字符串和我们想要从原始字符串的两端删除的字符长度作为参数,并返回一个新的结果字符串。

示例

Input: String = "Ram got first place"
                    trimLength = 2

Output: "m got first pla"

在这里,在结果字符串中,从字符串的开头和结尾删除了 2 个字符,因为 trimLength 的大小为 2。

算法

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

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

  • 步骤 3 − 如果不是,则它将使用 index() 函数查找我们将从其开始包含字符的新起始索引。

  • 步骤 4 − 再次使用 index() 函数查找我们将停止包含字符的新结束索引。

  • 步骤 5 − 然后它使用范围运算符创建一个新字符串,其中包含从计算出的起始索引到结束索引的所有字符。

  • 步骤 6 − 返回新的结果字符串。

  • 步骤 7 − 创建一个字符串。

  • 步骤 8 − 创建一个变量并存储我们想要从原始字符串的两端删除的长度。

  • 步骤 9 − 调用函数并将字符串和 trimLength 作为参数传递给它。

  • 步骤 10 − 显示输出。

示例

在下面的 Swift 程序中,我们将从两端裁剪字符串。因此,我们创建了一个函数,该函数以字符串和我们想要从两端裁剪的长度作为参数。然后,它将检查 numberOfChar 是否大于或等于字符串的长度。如果是,则我们不需要裁剪字符串,因此它将返回原始字符串。如果不是,则该函数使用 index() 函数计算起始和结束索引。然后使用 String() 初始化器以及范围参数 ([tStartIndex..

import Foundation
import Glibc

func trimString(str: String, numberOfChar: Int)-> String{
   if numberOfChar >= str.count
   {
      return str
   }
   
   let tStartIndex = str.index(str.startIndex, offsetBy: numberOfChar)
   let tEndIndex = str.index(str.endIndex, offsetBy: -numberOfChar)

   let newStr = String(str[tStartIndex..<tEndIndex])
    
   return newStr
}

let s = "Ram likes Swift"
let result = trimString(str: s, numberOfChar: 4)
print("Original String:", s)
print("String after trimming:", result)

输出

Original String: Ram likes Swift
String after trimming: likes S

方法 2:从两端裁剪空格

在 Swift 中,我们还可以使用 trimmingCharacters(in:) 从输入字符串的两端删除空格。它在从两端删除空格后返回一个新字符串。

语法

func trimmingCharacters(in:.whitespaces)

此函数接受一个参数,该参数是一组字符。要删除空格,我们使用 whitespaces 或 whitespacesAndNewlines。

示例

在下面的 Swift 程序中,我们将从两端裁剪字符串。因此,创建一个在两端都有空格的字符串,然后使用 trimmingCharacters() 函数从给定字符串中删除空格并显示最终输出。

import Foundation
import Glibc

let OriginalStr = "       Sky Pink   "
let trimStr = OriginalStr.trimmingCharacters(in: .whitespacesAndNewlines)
print(trimStr) 

输出

Sky Pink

结论

因此,这就是我们如何从两端裁剪字符串的方法。如果要从两端删除指定数量的字符,则可以使用方法 1。或者,如果只想从两端删除空格,则可以使用预定义的 trimmingCharacters(in:) 函数。两种方法都非常有效。

更新于: 2023 年 6 月 16 日

262 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.