我的XML文件在单引号之间编码字符串。数组元素以逗号分隔。
'你好','世界'
通常,提取逗号分隔值很容易:
let result = myString.split{ $0 == "," }.map(String.init)
问题在于我不能肆意分裂逗号:如果逗号用单引号括起来,那么它是 text ,否则它是一个数组元素分隔符:
'你好','世界','你好,世界'
应该产生:
["Hello", "World", "Hello, World"]
注意两件事:
'你好','世界','你好,世界',''
应该产生:
["Hello", "World", "Hello, World", ""]
我需要一些方法来区分位于单引号之外的逗号分隔值:','更好的方法可能是在单引号之间保留任何内容,但我不知道该怎么做此
答案 0 :(得分:1)
如何用单引号分隔字符串,然后删除包含单个逗号和空格的元素?
请注意,您应该删除结果的第一个/最后一个元素,因为输入以单引号开头和结尾,并在分离后生成一个空元素。
var result = myString.components(separatedBy: "'").filter {
$0.trimmingCharacters(in: .whitespaces) != ","
}
result.removeLast()
result.removeFirst()