You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift中移除电话号码中的符号与空格的实现方法

移除电话号码中的指定特殊字符

你可以用两种简洁的方式一次性处理所有需要移除的字符:

方法一:正则表达式替换

直接用正则表达式匹配所有要移除的字符(空格、+、(、)、-),一次性替换为空:

let phone: String = "+1 (512) 477-2900"
// 匹配空格、+、(、)、- 这些字符,替换为空
let formattedPhone = phone.replacingOccurrences(of: "[+\\s()-]", with: "", options: .regularExpression)
// 最终结果:"15124772900"

正则表达式里的[+\\s()-]表示匹配方括号内的任意一个字符:

  • +:匹配加号
  • \\s:匹配任意空白字符(包括空格)
  • (:匹配左括号
  • ):匹配右括号
  • -:匹配减号

方法二:字符集合过滤

创建一个包含所有要移除字符的集合,然后过滤字符串,只保留不在集合中的字符:

let phone: String = "+1 (512) 477-2900"
// 定义要移除的字符集合
let charactersToRemove: CharacterSet = ["+", "(", ")", "-", " "]
// 按指定字符拆分字符串后重新拼接
let formattedPhone = phone.components(separatedBy: charactersToRemove).joined()
// 最终结果:"15124772900"

这种方法通过components(separatedBy:)把字符串按指定字符拆分成数组,再用joined()拼接成无特殊字符的完整字符串。

内容的提问来源于stack exchange,提问作者john doe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 00:10:32