как я могу добавить дополнительные пробелы перед любым специальным символом
Как добавить дополнительные пробелы перед любым специальным символом в строке, в Swift, например, если у меня есть строка
var str = "#StackOverFlow@is$awesome"
" #StackOverFlow @is $awesome" // i have to achieve this...add empty spaces before every #
как мы можем решить и достичь этого в Swift
1 ответ
Решение
Вы можете использовать регулярное выражение для соответствия любому специальному символу "[^\\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"