最好的方法是删除字符串的前六个字符?通过Stack,我发现了几种应该是解决方案的方法,但我发现它们有错误。例如,
extension String {
func removing(charactersOf string: String) -> String {
let characterSet = CharacterSet(charactersIn: string)
let components = self.components(separatedBy: characterSet)
return components.joined(separator: "")
}
如果我输入https://youtube.com这样的网站,并将其存储为名为网站的变量,请输入以下内容
website.removing(charactersOf: "https://")
它删除了https://部分,但它也删除了文本中的所有内容,所有代码,'等等。
如何删除第一个字符?
}
答案 0 :(得分:15)
在Swift 4中,它非常简单,只需使用dropFirst(n: Int)
let myString = "Hello World"
myString.dropFirst(6)
//World
在您的情况下:website.dropFirst(6)
答案 1 :(得分:12)
length
是您要删除的字符数(在您的情况下为6)
extension String {
func toLengthOf(length:Int) -> String {
if length <= 0 {
return self
} else if let to = self.index(self.startIndex, offsetBy: length, limitedBy: self.endIndex) {
return self.substring(from: to)
} else {
return ""
}
}
}
答案 2 :(得分:11)
为什么不:
let stripped = String(website.characters.dropFirst(6))
对我来说似乎更简洁明了。
(不管怎么说,它都不适用于多个char emojis)
[编辑] Swift 4使这更短:
let stripped = String(website.dropFirst(6))
答案 3 :(得分:0)
它将从字符串中删除前6个字符
var str = "Hello-World"
let range1 = str.characters.index(str.startIndex, offsetBy: 6)..<str.endIndex
str = str[range1]
print("the end time is : \(str)")