-1

我有一个包含多列的 67 个不同的表(有数十万行)。一列被命名为 PARCEL_ID。PARCEL_ID 字段包含“-”或空格或“/”等字符。我想从 PARCEL_ID 字段中的所有表中删除所有这些“-”或空格或“/”等字符文件夹。这些表是 dbf 文件。我想将诸如“04-2N-07-00 00-0001-0000”之类的 PARCEL_ID 列值获取到此“042N07000000010000”。基本上摆脱空白和破折号以及我不想要的任何其他字符。我如何使用 python 做到这一点?这是我没有成功的尝试:

import arcpy
import re
arcpy.env.workspace = r'C:\Workspace\PARCELS_2012\Nal_dbf_test'

fcs = arcpy.ListTables()

s = ['PARCEL_ID']

for fc in fcs:
    print "** Now working on "+fc
    fields = arcpy.ListFields(fc)
    for field in fields:
        if field.baseName in s:
            PARCEL_ID = re.sub(r'[-/ ]', '', PARCEL_ID)
            print "   Parcelno cleaned"
            if not field.baseName in s:
                print "   Already clean"
print fc + " is cleaned."
4

1 回答 1

0

您可以使用正则表达式

import re
PARCEL_ID = re.sub(r'[-/ ]', '', PARCEL_ID)

在括号之间添加您不想要的任何其他字符。

于 2013-06-04T17:30:21.897 回答