내가 운영중인 텍스트 파일이 있다고 가정 해보십시오. 이런 식으로 뭔가 (희망이 너무 읽을 수 없습니다) : 예외 처리기에서Python : 문자열 인덱스의 행 번호와 열 번호를 가져 옵니까?
data_raw = open('my_data_file.dat').read()
matches = re.findall(my_regex, data_raw, re.MULTILINE)
for match in matches:
try:
parse(data_raw, from_=match.start(), to=match.end())
except Exception:
print("Error parsing data starting on line {}".format(what_do_i_put_here))
raise
주의 what_do_i_put_here
라는 특정 변수가있다. 내 질문은 : 어떻게 내 스크립트가 해당인쇄 할 수 있도록 그 이름을 할당 할 수있는 '나쁜 지역'내가 시작하려고 노력하고있어? 나는 파일을 다시 읽지 않아도되고, 내가 뭘할지 모르겠다. ...
정규 표현식이 새로운 라인을 사용합니까? 그렇지 않으면 라인 단위로 찾아 낼 수 있습니다. 그러면 라인 번호를 쉽게 얻을 수 있습니다. – dustyrockpyle
예, 여러 행을 사용합니다 (따라서're.MULTILINE'을 사용했습니다) –
re.findall 문자열 목록을 반환하지 않습니까? : https://docs.python.org/2/library/re.html . 문자열에는 시작 또는 끝 메서드가 없습니다. –