在日常的数据处理中,我们经常遇到需要对数字字段进行补零操作的需求。例如,要求所有编号统一为5位长度:1变成00001,12变成00012,123变成00123……
虽然可以手动多次实用字段计算器赋值,但效率低。今天分享一个ArcGIS字段计算器的小技巧,一行代码即可自动完成补零。
代码(VB解释器)
在ArcGIS的字段计算器中,选择VB Script作为解析程序,然后输入以下表达式:
string(5 - len([补零字段]), "0") & [补零字段]代码详解
| 部分 | 含义 |
|---|---|
len([补零字段]) | 获取当前字段值的字符长度 |
5 - len(...) | 计算还需要补几个零 |
string(数量, "0") | 生成指定个数的“0”字符串 |
& | 连接符,将补的零与原值拼接 |
注意:以上示例针对目标长度为5位。如果你需要保留6位、8位或其他长度,只需将代码中的
5改为你需要的总位数即可。
操作步骤
在ArcGIS属性表中,右键点击需要补零的字段 → 选择字段计算器。
在弹出的窗口中,将解析程序改为VB Script。
把下面的代码粘贴到表达式框中:
string(5 - len([字段名]), "0") & [字段名](请将
[字段名]替换为你实际字段的名称,比如[加零])点击确定,补零瞬间完成。
总结
一个小小的string()与len()组合,就能代替枯燥的手工补零工作。掌握字段计算器中的常用函数,能极大提升ArcGIS数据处理效率。