首页 > 解决方案 > 如何在任何特殊字符之前添加额外的空格

问题描述

如何在 Swift 中的字符串中的任何特殊字符之前添加额外的空格,例如,如果我有字符串

var str = "#StackOverFlow@is$awesome"

 " #StackOverFlow  @is  $awesome"   // i have to achieve this...add empty spaces before every # 

我们如何在 Swift 中解决和实现这一点

标签: iosswiftalgorithmswift-string

解决方案


您可以使用正则表达式匹配任何特殊字符"[^\\w]",即任何非单词字符,并替换为"$0"前面带有空格的相同匹配。如果您想排除空格被替换,您可以使用"[^\\w|\\s]"

let str =  "#StackOverFlow#is#awesome"
let result = str.replacingOccurrences(of: "[^\\w]",
                          with: "   $0",
                          options: .regularExpression)


print(result)  // "   #StackOverFlow   #is   #awesome\n"

let str2 =  "•StackOverFlow•is•awesome"
let result2 = str2.replacingOccurrences(of: "[^\\w]",
                          with: "   $0",
                          options: .regularExpression)


print(result2)  // "   •StackOverFlow   •is   •awesome\n"

推荐阅读