2014-08-04 5 views
0

В ArcMap я хотел бы найти и заменить часть адреса в поле. Например, у меня есть поля в моей таблице геоданных, например «None None,, Queenstown». Я хотел бы заменить «None None», с пустым текстом. Я думал об этом, используя UpdateCursor.найти и заменить текст с помощью UpdateCursor в ArcMap

До сих пор я могу получить функции, которые не содержат "Нет Нет,,":

with arcpy.da.UpdateCursor(fcOrganisation, fields) as cursor: 
    for row in cursor: 
     if "None None, , " in row[0]: 
      print "C = %s" % (row[0]) 

Это тогда дает мне список строк, которые содержат "None None,":

C = None None, , Stutterheim 
C = None None, , Bhisho 
C = None None, , Queenstown 
C = None None, , East London 
C = None None, , East London 
C = None None, , Port Elizabeth 
C = None None, , Alice 
C = None None, , Port Elizabeth 

Теперь я хочу, чтобы заменить только «нет нет,» так что я только получить имена города:

Stutterheim 
Bhisho 
Queenstown 
East London 
East London 
Port Elizabeth 
Alice 
Port Elizabeth 

Я могу сделать это о n поле в таблице в ArcMap. Есть ли способ сделать это с помощью python/arcpy и с помощью UpdateCursor?

Спасибо за любую помощь.

ответ

0

сделать это следующим образом:

with arcpy.da.UpdateCursor(fcOrganisation, fields) as cursor: 
    for row in cursor: 
     srchStr = "None None, , " 
     if srchStr in row[0]: 
      print "C = %s" % (row[0]) 
      cursor.updateRow(row[0][len(srchStr):])