cWorkString = ALLTRIM(CityStateZipField) nLastSpace = RAT(' ',cWorkString) cZip = SUBST(cWorkString,nLastSpace+1) cWorkString = ALLTRIM(LEFT(cWorkString,nLastSpace-1)) cState = RIGHT(cWorkString,2) nLastSpace = nLastSpace - 4 && Drop last space, state is always at least 2 characters FOR nCtr = nLastSpace TO 1 STEP -1 IF ISALPHA(SUBST(cWorkString,nCtr,1)) cState = SUBST(cWorkString,nCtr,1) + cState ELSE nCtr = nCtr - 1 EXIT ENDIF ENDFOR cCity = LEFT(cWorkString, nCtr)