Swift 有字符串 Trim 方法吗?


在 Swift 中,您可以使用 String 类型的 trimmingCharacters(in:) 方法来修剪字符串的部分内容。这是一个实例方法,它返回一个通过移除应用的字符集而创建的新字符串。

此方法接受一个 CharacterSet 类型的参数来执行前导和尾随字符的修剪。您可以应用不同类型的 CharacterSet 来修剪字符串。

以下是一些最常用的 CharacterSet:

  • 空格

  • 空格和换行符

  • 十进制数字

  • 字母

  • 小写字母

  • 大写字母

  • 标点符号

  • 首字母大写字母

  • 换行符

您将了解其中一些关于如何执行不同类型的字符串修剪。

空格

语法

它用于移除字符串开头和结尾的空格。例如:

trimmingCharacters(in: .whitespaces)

示例

您必须使用空格 CharacterSet 调用字符串的 trimmingCharacters 实例方法。

import Foundation
let sentence = "  this is a sample string containing leading and trailing spaces    "
let trimmedString = sentence.trimmingCharacters(in: .whitespaces)
print("trimmed string: \(trimmedString)")

输出

trimmed string: this is a sample string containing leading and trailing spaces

空格和换行符

语法

它用于移除字符串开头和结尾的空格以及换行符。

let sentence = "   \n this is a sample string containing newlines, leading and trailing spaces    "

示例

这是您需要修剪开头和结尾空格和换行符的字符串。首先,我们将使用空格 CharacterSet 修剪它,然后使用 whitespacesAndNewlines,以便您更好地理解它。

import Foundation
let sentence = "   \n this is a sample string containing newlines, leading and trailing spaces    "
let trimmedString = sentence.trimmingCharacters(in: .whitespaces)
print("trimmed string: \(trimmedString)")

输出

trimmed string: 
 this is a sample string containing newlines, leading and trailing spaces

示例

您可以看到,开头和结尾的空格已被修剪,但换行符没有被移除。为了同时修剪两者,您需要使用 whitespacesAndNewlines CharacterSet。

import Foundation
let sentence = "   \n this is a sample string containing newlines, leading and trailing spaces    "
let trimmedString = sentence.trimmingCharacters(in: .whitespacesAndNewlines)
print("trimmed string: \(trimmedString)")

输出

trimmed string: this is a sample string containing newlines, leading and trailing spaces

十进制数字

语法

它用于返回从 0 到 9 的十进制值的字符集。例如:

trimmingCharacters(in: .decimalDigits)

示例

您必须使用 decimalDigits CharacterSet 调用字符串的 trimmingCharacters 实例方法。

import Foundation
let sentence = "16 is my lucky number same as 24"
let trimmedString = sentence.trimmingCharacters(in: .decimalDigits)
print("trimmed string: \(trimmedString)")

输出

trimmed string:  is my lucky number same as 

示例

它如何处理浮点值?

import Foundation
let sentence = "1.6 is my lucky number same as 24"
let trimmedString = sentence.trimmingCharacters(in: .decimalDigits)
print("trimmed string: \(trimmedString)")

输出

trimmed string: .6 is my lucky number same as 

小写字母

语法

此 CharacterSet 返回一组小写字母。例如:

trimmingCharacters(in: .lowercaseLetters)

示例

您必须使用 lowercaseLetters CharacterSet 调用字符串的 trimmingCharacters 实例方法。

import Foundation
let sentence = "this string is containing lowercase letters"
let trimmedString = sentence.trimmingCharacters(in: .lowercaseLetters)
print("trimmed string: \(trimmedString)")

输出

trimmed string:  string is containing lowercase 

如您所见,开头和结尾的小写字母已从字符串中移除。

标点符号

语法

此 CharacterSet 返回一组标点符号。例如:

trimmingCharacters(in: .punctuationCharacters)

示例

您必须使用 punctuationCharacters CharacterSet 调用字符串的 trimmingCharacters 实例方法。

import Foundation
let sentence = ";this string is containing punctuation letters."
let trimmedString = sentence.trimmingCharacters(in: .punctuationCharacters)
print("trimmed string: \(trimmedString)")

输出

trimmed string: this string is containing punctuation letters

换行符

语法

此 CharacterSet 返回一组换行符。例如:

trimmingCharacters(in: .newlines)

示例

您必须使用 newlines CharacterSet 调用字符串的 trimmingCharacters 实例方法。

import Foundation
let sentence = "\n\nthis \nstring is containing newlines characters\n"
let trimmedString = sentence.trimmingCharacters(in: .newlines)
print("trimmed string: \(trimmedString)")

输出

trimmed string: this 
string is containing newlines characters

您可以看到如何从字符串中移除开头和结尾的换行符。

结论

trimmingCharacters() 方法是 Swift 语言中最重要的方法之一。通常,您需要执行不同类型的字符修剪。

更新于:2023年1月3日

2K+ 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告