相关疑难解决方法(0)

在Swift编程语言中获取字符串的第n个字符

如何获取字符串的第n个字符?我尝试了托架([])访问器没有运气.

var string = "Hello, world!"

var firstChar = string[0] // Throws error
Run Code Online (Sandbox Code Playgroud)

错误:'subscript'不可用:不能使用Int下标String,请参阅文档注释以供讨论

string collections character swift

392
推荐指数
20
解决办法
27万
查看次数

如何在Swift中创建范围?

在Objective-c中,我们使用NSRange创建范围

NSRange range;
Run Code Online (Sandbox Code Playgroud)

那么如何在Swift中创建范围呢?

range swift

95
推荐指数
3
解决办法
10万
查看次数

String.Index如何在Swift中工作

我一直在使用Swift 3更新我的一些旧代码和答案,但是当我使用Swift Strings和Indexing时,理解事情是一件很痛苦的事情.

具体来说,我尝试以下方法:

let str = "Hello, playground"
let prefixRange = str.startIndex..<str.startIndex.advancedBy(5) // error
Run Code Online (Sandbox Code Playgroud)

第二行给我以下错误

'advancedBy'不可用:要将索引推进n步,请在生成索引的CharacterView实例上调用'index(_:offsetBy :)'.

我看到它String有以下方法.

str.index(after: String.Index)
str.index(before: String.Index)
str.index(String.Index, offsetBy: String.IndexDistance)
str.index(String.Index, offsetBy: String.IndexDistance, limitedBy: String.Index)
Run Code Online (Sandbox Code Playgroud)

起初这些让我很困惑所以我开始玩它们直到我理解它们.我在下面添加一个答案来说明它们是如何使用的.

string indexing swift

92
推荐指数
1
解决办法
7万
查看次数

使用Swift的字符串中子字符串的索引

我习惯在JavaScript中这样做:

var domains = "abcde".substring(0, "abcde".indexOf("cd")) // Returns "ab"
Run Code Online (Sandbox Code Playgroud)

Swift没有这个功能,如何做类似的事情?

string substring swift

56
推荐指数
6
解决办法
7万
查看次数

'subscript'不可用:不能使用CountableClosedRange <Int>下标String,请参阅文档注释以供讨论

在斯威夫特4,当我尝试采取我得到这个错误SubstringString使用标语法.

'subscript'不可用:不能使用CountableClosedRange下标String,请参阅文档注释以供讨论

例如:

let myString: String = "foobar"
let mySubstring: Substring = myString[1..<3]
Run Code Online (Sandbox Code Playgroud)

两个问题:

  1. 我该如何解决这个错误?
  2. 错误中提到的"讨论文档评论"在哪里?

string swift swift4

38
推荐指数
5
解决办法
3万
查看次数

String不能用int索引

当我尝试使用最新版本的Swift 设置label1为第一个字母时,我在最后一行收到错误string.如何解决这个问题?

let preferences = UserDefaults.standard
let name1 = "" + preferences.string(forKey: "name")!
let name2 = name1
label1.text = name2.substring(from: 0)
Run Code Online (Sandbox Code Playgroud)

ios swift3

7
推荐指数
2
解决办法
2883
查看次数

在 Swift 中如何在每第 n 个字符处分割一个字符串?

就像问题所说,如果我有:

XQQ230IJFEKJLDSAIOUOIDSAUIFOPDSFE28
Run Code Online (Sandbox Code Playgroud)

如何每隔 8 个字符分割该字符串以获得:

XQQ230IJ FEKJLDSA IOUOIDSA UIFOPDSA
Run Code Online (Sandbox Code Playgroud)

swift

5
推荐指数
1
解决办法
4103
查看次数

在“Swift 3”中的字符串中查找新行字符

在我的应用程序中,我从网络服务接收一些传入数据。在该数据中,也可能会接收到一些错误值,例如换行符。我想在响应字符串中查找它是否包含换行符。

在 Swift 3 之前我可以这样做

string.rangeOfString("\n")) == nil)
Run Code Online (Sandbox Code Playgroud)

但在Swift 3中这个方法不再可用。但是,substring可以使用在 的帮助下执行的方法Range

我想检测我的字符串是否包含"\n"如何在Swift 3中使用此方法来完成此操作。

xcode ios swift3

4
推荐指数
1
解决办法
1万
查看次数

如何在swift 4中获取子字符串?

我知道我们可以使用下标来剪切Swift 4中的一部分字符串.

let s = "aString"
let subS = s[..<s.endIndex]
Run Code Online (Sandbox Code Playgroud)

但问题是,如何切割s到像SubString一样aStr.
我的意思是,我想做的就像是s[..<(s.endIndex-3)].
但这不对.
那么,如何在Swift 4中做到这一点.

string swift swift4

4
推荐指数
1
解决办法
6371
查看次数

Swift - 如何从给定的字符串中获取特定的子字符串

我有字符串,由一个预定义的字符串+随机字母组成,如" https://www.facebook.com/ "和"userId".

我有3个预定义的社交主机字符串:

let vkPredefinedHost = "https://vk.com/"
let fbPredefinedHost = "https://www.facebook.com/"
let instPredefinedHost = "https://www.instagram.com/"
Run Code Online (Sandbox Code Playgroud)

我想要的是,提取社交ID,这是一个字符串后面跟着那个字符串(我不确切知道我得到了哪一个).

所以我的问题是:

1)如何检查字符串是否包含我预先定义的字符串之一

2)如何提取字符串后跟此字符串

例如,我得到" https://www.instagram.com/myUserId12345 ",我想得到myUserId12345

swift

2
推荐指数
1
解决办法
513
查看次数

标签 统计

swift ×8

string ×5

ios ×2

swift3 ×2

swift4 ×2

character ×1

collections ×1

indexing ×1

range ×1

substring ×1

xcode ×1