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

如何在R语言中去除地址字段中间字符的前导零?

去除地址列中的数字前导零

可以用R中的正则表达式结合gsub()函数来实现,核心思路是匹配地址中以零开头且长度大于1的独立数字串,并去掉其前导零。

完整代码示例

# 示例数据
address_data <- data.frame(current_address = c("1470 W 2055 S", "360 N 0390 E","1076 S 0600 E"),
                           expected_address = c("1470 W 2055 S", "360 N 390 E", "1076 S 600 E"))

# 处理前导零
address_data$cleaned_address <- gsub("\\b0+(\\d+)\\b", "\\1", address_data$current_address)

# 查看结果
address_data

运行后输出的cleaned_address列会和expected_address完全一致:

current_address  expected_address    cleaned_address
1     1470 W 2055 S     1470 W 2055 S     1470 W 2055 S
2      360 N 0390 E      360 N 390 E      360 N 390 E
3     1076 S 0600 E     1076 S 600 E     1076 S 600 E

正则表达式解释

  • \\b:单词边界,确保我们匹配的是独立的数字串(不会误匹配像A012这类和字母连在一起的情况)
  • 0+:匹配一个或多个连续的前导零
  • (\\d+):捕获零之后的所有数字作为分组,后续用来替换
  • \\1:将匹配到的内容替换为捕获的数字分组,也就是去掉前导零后的有效数字

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 00:01:09