gpt4 book ai didi

swift - 了解 removeRange(_ :) documentation

转载 作者:IT王子 更新时间:2023-10-29 05:29:45 25 4
gpt4 key购买 nike

To remove a substring at a specified range, use the removeRange(_:) method:

1 let range = advance(welcome.endIndex, -6)..<welcome.endIndex
2 welcome.removeRange(range)
3 println(welcome)
4 // prints "hello"

Excerpt From: Apple Inc. “The Swift Programming Language.” iBooks. https://itun.es/ca/jEUH0.l

你好,

我没有完全理解上面代码中第 1 行的语法和功能。

请解释使用这个字符串:

let welcome = "hello there"

这是我的计算结果:

"To change the start and end index, use advance()."
From: https://stackoverflow.com/a/24045156/4839671

更好的文档 advance()受到欢迎。即它的参数

Use ..< to make a range that omits its upper value

Excerpt From: Apple Inc. “The Swift Programming Language.” iBooks. https://itun.es/ca/jEUH0.l

welcome.endIndex将是 11

最佳答案

swift 2

我们将使用 varremoveRange需要对可变字符串进行操作。

var welcome = "hello there"

这一行:

let range = welcome.endIndex.advancedBy(-6)..<welcome.endIndex

表示我们从字符串的末尾(welcome.endIndex)开始向后移动 6 个字符(前进一个负数 = 向后移动),然后求出我们的位置和当前位置之间的范围(..<)字符串结尾 ( welcome.endIndex )。

它创建了一个范围 5..<11 ,它包含字符串的 "there" 部分。

如果您从字符串中删除此字符范围:

welcome.removeRange(range)

那么你的字符串将是剩下的部分:

print(welcome) // prints "hello"

您可以采用另一种方式(从字符串的起始索引开始)以获得相同的结果:

welcome = "hello there"
let otherRange = welcome.startIndex.advancedBy(5)..<welcome.endIndex
welcome.removeRange(otherRange)
print(welcome) // prints "hello"

这里我们从字符串的开头 (welcome.startIndex) 开始,然后前进 5 个字符,然后我们从这里到字符串的结尾 (..<) 建立一个范围 (welcome.endIndex)。

注意:advance函数可以向前和向后工作。

swift 3

语法变了,但概念是一样的。

var welcome = "hello there"
let range = welcome.index(welcome.endIndex, offsetBy: -6)..<welcome.endIndex
welcome.removeSubrange(range)
print(welcome) // prints "hello"

welcome = "hello there"
let otherRange = welcome.index(welcome.startIndex, offsetBy: 5)..<welcome.endIndex
welcome.removeSubrange(otherRange)
print(welcome) // prints "hello"

关于swift - 了解 removeRange(_ :) documentation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30018006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com