为了账号安全,请及时绑定邮箱和手机立即绑定

在SWIFT中将字符串拆分成数组?

在SWIFT中将字符串拆分成数组?

iOS
猛跑小猪 2019-06-14 17:30:20
在SWIFT中将字符串拆分成数组?假设我这里有一根绳子:var fullName: String = "First Last"我希望将字符串拆分为空格,并将值赋值给它们各自的变量。var fullNameArr = // something like: fullName.explode(" ")  var firstName: String = fullNameArr[0]var lastName: String? = fullnameArr[1]而且,有时用户可能没有姓。
查看完整描述

3 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

SWIFT的方法是使用全局split功能,如下所示:

var fullName = "First Last"var fullNameArr = split(fullName) {$0 == " "}var firstName: String = fullNameArr[0]var lastName:
 String? = fullNameArr.count > 1 ? fullNameArr[1] : nil

带着SWIFT 2

在SWIFT 2中,由于引入了内部CharacterView类型,拆分的使用变得更加复杂。这意味着字符串不再采用SequenceType或Collection Type协议,而必须使用.characters属性访问字符串实例的CharacterView类型表示形式。(注意:CharacterView确实采用SequenceType和Collection Type协议)。

let fullName = "First Last"let fullNameArr = fullName.characters.split{$0 == " "}.map(String.init)// or simply:
// let fullNameArr = fullName.characters.split{" "}.map(String.init)fullNameArr[0] // FirstfullNameArr[1] // Last


查看完整回答
反对 回复 2019-06-14
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

打电话componentsSeparatedByString方法fullName

import Foundationvar fullName: String = "First Last"let fullNameArr = fullName.componentsSeparatedByString(" ")
var firstName: String = fullNameArr[0]var lastName: String = fullNameArr[1]

SWIFT 3+更新

import Foundationlet fullName    = "First Last"let fullNameArr = fullName.components(separatedBy: " ")let name   
 = fullNameArr[0]let surname = fullNameArr[1]


查看完整回答
反对 回复 2019-06-14
?
PIPIONE

TA贡献1829条经验 获得超9个赞

最简单的方法是使用组件sSeparatedBy:

SWIFT 2:

import Foundationlet fullName : String = "First Last";let fullNameArr : [String] = fullName.componentsSeparatedByString(" ")
// And then to access the individual words:var firstName : String = fullNameArr[0]var lastName : String = fullNameArr[1]

SWIFT 3:

import Foundationlet fullName : String = "First Last"let fullNameArr : [String] = fullName.components(separatedBy: " ")
// And then to access the individual words:var firstName : String = fullNameArr[0]var lastName : String = fullNameArr[1]


查看完整回答
反对 回复 2019-06-14
  • 3 回答
  • 0 关注
  • 1302 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信