Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[15713] Delimiter 추출법
성낙권 [] 1757 읽음    2016-05-31 10:15
도로주소를 디비로 만들려고 하는데 제공하는 데이타가 애매하게 되어 있군요..

정부에서 제공하는 텍스트 데이타가 아래와 같이 되어 있습니다.

4311110100|충청북도|청주시 상당구|영동||0|87|4|431113236004|교서로|0|1|0|||4311110100100870004047440|01|4311152500|중앙동|28546||||||알리안츠생명빌딩|0|28546|0||

특징은 '청주시 상당구'처럼 한필드에 공백이 있고, 영동 다음의 데이타는 없기 때문에 구분자가 연속으로 나옵니다. 즉 || 이렇게

데이타가 되어 있어서 구분을 할 수 없군요

slList.Delimiter := '|';
slList.DelimitedText:=Str;

이럴경우 '청주시 상당구' 처럼 글자가 공백인 경우에는 다르게 구분해버리네요...(..'청주시', '상당구'..)

델파이7을 사용중이라 StrictDelimiter 프로퍼티는 지원이 안되네요....

그래서 공백을 없애고자

ExtractStrings(['|'],[],PChar(Str),slList);를 사용하면 데이타가 없는구분자의 공백이 데이타로 들어오지 않네요..

이때에는 '청주시 상당구','영동','0','874'..처럼 '영동' 다음의 공백은 없어져 버려요..

이데이타를 제대로 추출할 방법이 없을까요?

함수를 따로 만들어야 할까요?

+ -

관련 글 리스트
15713 Delimiter 추출법 성낙권 1757 2016/05/31
15715     Re:Delimiter 추출법 조대현.Clau 2242 2016/05/31
15716         Re:Re:Delimiter 추출법 성낙권 2018 2016/06/01
15714     Re:Delimiter 추출법 kylix 1944 2016/05/31
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.