【发布时间】:2017-11-30 06:39:36
【问题描述】:
假设我让某人输入了文本“姓名:鲍勃”
如果我知道左侧是什么,有什么方法可以提取冒号的右侧?
例如,如果我知道冒号的左侧是“姓名”,我是否可以提取“鲍勃”我该怎么做?
【问题讨论】:
-
嗯..你能写更多关于你在做什么的详细信息吗?看起来您正在尝试在这里解析字典。如果是这种情况,那么您的做法就完全错误了。
假设我让某人输入了文本“姓名:鲍勃”
如果我知道左侧是什么,有什么方法可以提取冒号的右侧?
例如,如果我知道冒号的左侧是“姓名”,我是否可以提取“鲍勃”我该怎么做?
【问题讨论】:
只要知道字符串中包含冒号,就可以将字符串分成两部分,包含字符串的部分位于冒号的两边。
let str = "Name: Bob"
let comp = str.components(separatedBy: ":") //returns an array of strings
let name = comp[1] //returns "Bob"
如果您还想删除名称前的空格,您可以使用let comp = str.components(separatedBy: ": "),或者如果您想要更通用,let name = comp[1].replacingOccurrences(of: " ", with: "")
【讨论】:
comp[1] 是 " Bob"。你也必须去掉空格。
regular expression 更适合你的工作