对于Swift中给定的String
,我需要删除属于预定义字符集的前缀和后缀字符。我可以将components(separatedBy:)
与字符集一起使用,并在元件数组的开头和结尾处摆脱空字符串。只想知道是否有更好的方法?
谢谢!
您可以在字符串上使用.trimmingCharacters(in: CharacterSet)
。从此功能的Xcode中的“帮助”文本中:“返回从给定字符集中包含的String字符的两端删除的新字符串。”
这里是使用自定义字符集的单元测试示例。注意,它仅删除开头和结尾的字符,而不删除中间的字符(逗号保持不变):
.trimmingCharacters(in: CharacterSet)
还有一些预定义的字符集可能会有用。您还可以反转字符集。参见import XCTest
class TrimCharacters: XCTestCase {
func testExample() throws {
let string = "abcbaHello, World!ccbbaa"
let charactersToTrim = CharacterSet(charactersIn: "abc,")
XCTAssertEqual(string.trimmingCharacters(in: charactersToTrim), "Hello, World!")
}
}