草庐IT

ios - '子字符串(来自 : )' is deprecated: Please use String slicing subscript with a ' partial range from' operator. Swift 4 错误

这个问题在这里已经有了答案:HowcanIuseStringsubstringinSwift4?'substring(to:)'isdeprecated:PleaseuseStringslicingsubscriptwitha'partialrangefrom'operator(21个答案)关闭5年前。我正在将我现有的应用程序从Swift3转换为Swift4。它给出了错误:'substring(from:)'isdeprecated:PleaseuseStringslicingsubscriptwitha'partialrangefrom'operator.和'characters'i

Swift 字符串替换并获取新范围

有没有更好的方法在字符串替换后检索范围?这是当前版本:letusername="apple"msgString="{{user}}hasanapple"guardletrange=msgString.range(of:"{{user}}")else{return}msgString.replaceSubrange(range,withusername)userRange=msgString.range(of:username)有没有更好的方法获取用户名范围 最佳答案 我建议你创建一个类来做你多次做的事情在这个类中,您可以使用替换方法

swift - 如何在 Swift 中偏移 Range<T>?

假设我们有一个任意的Range我们想用startIndex创建一个新范围和endIndex进步了50个单位。我的第一个想法是这样做:letstartIndex=advance(range.startIndex,50)letendIndex=advance(range.endIndex,50)varnewRange=startIndex..但这给出了“fatalerror:无法增加endIndex”。(好吧,它与Range一起使用。我还没有尝试过使用其他通用参数。)我已经尝试了很多这种排列,包括分配range.startIndex和range.endIndex到新变量等。没有任何效果。我

ios - Xcode 调试器 : fatal error: Array index out of range. 。为什么?

当我运行我的应用程序时,我遇到了一个fatalerror:Arrayindexoutofrange错误,但我不明白为什么。这是我的代码:varrippleLocations:[MKRippleLocation]=[.TapLocation,.TapLocation,.Center,.Left,.Right,.TapLocation,.TapLocation,.TapLocation]varcircleColors=[UIColor.clearColor(),UIColor.clearColor(),UIColor.clearColor(),UIColor.clearColor()]ov

swift - 无法使用类型为 'append' 的参数列表调用 '(Range<String.Index>)'

我看到的错误是标题:Cannotinvoke'append'withanargumentlistoftype'(Range)'在Swift中练习字符串交错时,我试图将一个字符串的子字符串附加到另一个字符串。Thisotherquestioncovers将一个字符串附加到另一个字符串,这不是我的问题。Andthisotherquestion是抛出的完全不同的错误。TheSwiftdocumentationonStringsandCharacters似乎没有涵盖将子字符串附加到字符串。这一行(以及类似的一行)会引发错误。result.append(str2.index(after:str2

ios - 在 Swift 3.0 中使用 rangeOfCharacter

我正在尝试使用rangeOfCharacter创建应用程序,但无法理解其文档:funcrangeOfCharacter(from:CharacterSet,options:String.CompareOptions,range:Range?)-FindsandreturnstherangeintheStringofthefirstcharacterfromagivencharactersetfoundinagivenrangewithgivenoptions.文档链接:https://developer.apple.com/documentation/swift/string#symb

swift - 在 swift 中添加对范围运算符的支持? (例如,对于红色...紫色的 x)

在Swift中,我们可以使用rangeoperators(...和..)循环范围:foriin0...4{...}假设我有多种颜色:letred:MyColorletorange:MyColorletyellow:MyColorletgreen:MyColorletblue:MyColorletindigo:MyColorletviolet:MyColorletblack:MyColorletbrown:MyColor我如何支持范围运算符以便我可以按彩虹顺序遍历颜色?forrainbowColorinred...violet{...} 最佳答案

Swift 3 Calendar.range - 迁移功能

我不确定如何将此功能正确迁移到swift3。extensionDate{funcnumberOfDaysUntilDateTime(toDateTime:NSDate,calendar:NSCalendar)->Int{varfromDate:NSDate?,toDate:NSDate?calendar.rangeOfUnit(.Day,startDate:&fromDate,interval:nil,forDate:self)calendar.rangeOfUnit(.Day,startDate:&toDate,interval:nil,forDate:toDateTime)letd

Swift:如何检查给定字符串的范围是否有效

我编写了一个以String和Range作为参数的swift函数。如何检查范围是否对字符串有效?编辑:荒谬的例子funcfoo(text:String,range:Range)->String?{//whatcanIdoheretoensurevalidrangeguard*isvalidrangefortext*else{returnnil}returntext[range]}varstr="Hello,world"letrange=str.rangeOfString("world")letstr2="short"lettext=foo(str2,range:range!)

ios - 如何使用 swift 3 正确表达此 'rangeOfCharacter' 语句?

我有一些逻辑允许我从我创建的字符集中收听文本字段的无效字符的编辑,显然对swift3语法中的重新排列进行了处理,我收到以下错误:Cannotinvokeinitializerfortype'Range'withanargumentlistoftype'(DefaultBidirectionalIndices)在这行代码中:iflet_=string.rangeOfCharacter(from:invalidCharacters,options:[],range:Range(string.characters.indices))我查看了新的API文档,但似乎无法在swift3中找到此行的