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

在R语言中标准化地址格式:移除邮编后可变内容

解决方案:移除邮编后的可变内容

在R中可以通过正则表达式结合sub()函数实现这个需求,核心思路是匹配并保留到5位美国邮编为止的内容,丢弃后续所有字符。

实现代码

addresses <- c("515 DUMMY 1 75253 69AP",
               "1000 DUMMY 2  75211",
               "3948 DUMMY 3 75217 69Q",
               "4545 DUMMY 4 75217 MAP 68C")

# 清理邮编后的内容
cleaned_addresses <- sub("(.*\\b\\d{5})\\b.*", "\\1", addresses)

# 查看结果
cleaned_addresses

正则表达式说明

  • (.*\\b\\d{5}):捕获组,匹配任意字符(.*)直到遇到一个5位数字的完整单词(\\b\\d{5},\\b是单词边界,确保匹配的是独立的5位邮编,不会误匹配地址中包含5位数字的其他部分)。
  • \\b.*:匹配邮编之后的所有字符(.*),前面的\\b确保从邮编的结束位置开始匹配。
  • \\1:替换为第一个捕获组的内容,也就是保留到邮编为止的部分。

运行结果

执行后会得到你期望的格式:

[1] "515 DUMMY 1 75253"   "1000 DUMMY 2  75211" "3948 DUMMY 3 75217" 
[4] "4545 DUMMY 4 75217"

内容的提问来源于stack exchange,提问作者Nathanial O'Dell

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 10:15:58