필드의 각 행에있는 텍스트가 특정 형식을 따르는 지 확인하는 스크립트를 작성하고 있습니다. 또한 각 체크 된 레코드/행에 대해 결과를 인쇄하기를 원합니다.검색 커서 및 re.compile을 사용하여 텍스트 패턴 확인
텍스트 형식은 다음과 같습니다
000-00-0 NN 00
그래서 오타 행, 스크립트가 인쇄해야 다른 사람과 같은 00-00-0 NN 00
또는 000 00 0-NN 0
또는 아무것도가있는 경우 : "feature (feature #) does not match the pattern"
가.
아래는 내 스크립트입니다. 오류없이 작동하지만 올바른 결과를 제공하지는 않습니다. 현재 일치하지 않는 필드의 모든 기능을 표시하지만 실제로는 대부분 일치합니다! 나는
with arcpy.da.SearchCursor(inFC, field) as rows:
for row in rows:
if row[0] == re.compile("^([0-9]{3})[a-]([0-9]{2})[a-]([0-9]{1})[\s]([NESW]{2})[\s]([0-9]{2})*$"):
arcpy.AddWarning("Feature {0} matches the pattern")
else:
arcpy.AddMessage("Feature {0} does not match the pattern")
del row, rows
감사합니다! 나는 스크립팅을하는 초심자이기 때문에 나를 위해 배울 점이 많이 남아있다. –