2016-08-11 131 views
0

我有一个字符串,如“http://example.com/a/b/c”。我想将字符串转换为“httpexamplecomabc”以将其保存为文件名。我曾尝试如何删除斯威夫特字符串中的斜杠“/”

let result = str.stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "//")) 

let result = str.stringByTrimmingCharactersInSet(NSCharacterSet(charactersInString: "/")) 

但既不工程。任何关于如何删除“/”的想法?由于

+1

注意更换的“/”到“”发生,这让你歧义敞开,如果您有两个文件http://example.com/ab/c和HTTP ://example.com/a/bc这将通过您的设计压缩到相同的文件名。 – vielmetti

+0

这是一个很好的评论。也许我们可以用/替换_但事情似乎我无法迅速找到这些斜线/ –

回答

2

您可以通过使用

let mm = "http://example.com/a/b/c" 

let newString = mm.stringByReplacingOccurrencesOfString("/", withString: "") 
print(newString) // http:example.comabc 
+0

您的欢迎:) –

+1

@AnsonYao:根本不奇怪,[文档](https://developer.apple.com/reference/foundation/nsstring/1415462-stringbytrimmingcharactersinset)非常清楚:“通过从包含在给定字符集中的接收者字符的两端* *中删除一个新字符串。” –

+0

@MartinR,你说得对。我似乎误解了“修剪”这个词作为“删除”......作为一个词,“修剪”应该只在结尾处起作用。 –