초보 오늘도 이렇게 님들께 궁금한 점이 있어 이렇게 글을 남깁니다.
님들~~지발 도와 주세여~!!!!
temp := memo.text;
P:=POS(Hedit1.text,temp);
A1:=COPY(temp,1,P-1);
DELETE(temp,1,P);
Memo.text:=A1+ Hedit3.text;
문제의 코딩 부분입니다.
Hedit1.text로 찾고자 하는 것을 받아들입니다.
그리고
Hedit3.text는 변경하고자 하는 내용입니다.
한마디로 Hedit1을 삭~지우고 그 자리에 Hedit3을 넣고 싶다~뭐 이런 말이져.
근데 문제는
이넘의 코딩이 어느부분이 잘 못 됐는지 찾고 나서 바꾸자 하는 내용을 바꿔 넣은 후 그 뒷부분을 깔끔하게 만들어 버립니다.
예를 들면...
EQD+CN+MLCU3603803+2200+++5'
NAD+CA+MAE:172:20'
LOC+147+0171082::5'
라는 문장에서
Hedit1.text := NAD;
Hedit3.text := abcde;
라고 할때 위의 소스대로 하면 결과가
EQD+CN+MLCU3603803+2200+++5'
abcde
로 변해 버립니다.
어떻하면 좋을런지요?
님들~도와 주십시요~!!
SysUtils
Category
string handling routines
type
TReplaceFlags = set of (rfReplaceAll, rfIgnoreCase);
function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;
Description
StringReplace replaces occurrences of the substring specified by OldPattern with the substring specified by NewPattern. StringReplace assumes that the source string, specified by S, may contain Multibyte characters.
If the Flags parameter does not include rfReplaceAll, StringReplace only replaces the first occurrence of OldPattern in S. Otherwise, all instances of OldPattern are replaced by NewPattern.
If the Flags parameter includes rfIgnoreCase, The comparison operation is case insensitive.
위의 함수를 사용하시면 안되나요?
그리고 아래 문제는..제가 보기엔..
temp := memo.text;
P:=POS(Hedit1.text,temp);
A1:=COPY(temp,1,P-1);
DELETE(temp,1,P); <- 여기 결과를
Memo.text:=A1+ Hedit3.text + temp; <-여기에서 붙여줘야할거 같습니다.