commit 2025-08-29 09:41 edit a bit FindPosLinear in ZCppMain/ZtCMainChars.H

This commit is contained in:
2025-08-29 09:41:10 +09:00
parent eb8e057f5c
commit 50b3ea97b8

View File

@ -1670,17 +1670,15 @@ namespace ZNsMain
APC_Origin1 에서 발견된 길이는 ARRL_SearchedLen1 에 APC_Origin1 에서 발견된 길이는 ARRL_SearchedLen1 에
APC_Origin2 에서 발견된 길이는 ARRL_SearchedLen2 에 셋팅한다. APC_Origin2 에서 발견된 길이는 ARRL_SearchedLen2 에 셋팅한다.
*/ */
ARRL_SearchedPos1=-1; ARRL_SearchedPos1 = -1 ;
ARRL_SearchedPos2=-1; ARRL_SearchedPos2 = -1 ;
ARRL_SearchedLen1= 0; ARRL_SearchedLen1 = 0 ;
ARRL_SearchedLen2= 0; ARRL_SearchedLen2 = 0 ;
if(AL_SearchLength<1) return -1; if(AL_SearchLength<1) return -1;
TypeLength VL_MatchLen= 0; TypeLength VL_MatchLen = 0 ;
TypeLength VL_FindPos =-1; TypeLength VL_FindPos = -1 ;
/* APC_Origin1 에서는 끝에서 최대 AL_SearchLength 개의 문자열만 비교한다. */
if(APC_Origin1<APC_Search) if(APC_Origin1<APC_Search)
{ {
@ -1726,7 +1724,7 @@ namespace ZNsMain
); );
//////////////////////////////////// ////////////////////////////////////
if(VB_IsOK==true) if(VB_IsOK)
{ {
ARRL_SearchedPos1= AL_OriginLen1-VL_MatchLen ARRL_SearchedPos1= AL_OriginLen1-VL_MatchLen
; ARRL_SearchedPos2= 0 ; ARRL_SearchedPos2= 0
@ -1735,7 +1733,7 @@ namespace ZNsMain
; ;
return 0; return 0;
}/* }/*
if(VB_IsOK==true)*/ if(VB_IsOK)*/
}/* }/*
if(VL_MatchLen>0)*/ if(VL_MatchLen>0)*/
@ -1776,11 +1774,13 @@ namespace ZNsMain
TypeLength& ARRL_SearchedLen2 TypeLength& ARRL_SearchedLen2
/*//////////*/ ) ///////////////////////////////////////////////*/ /*//////////*/ ) ///////////////////////////////////////////////*/
{ {
return ZtCMainChars::FindPosLinear( return ZtCMainChars::FindPosLinear
(
AR_CCharsOrigin1.data(), AR_CCharsOrigin2.data(), AR_CCharsSearch.data(), AR_CCharsOrigin1.data(), AR_CCharsOrigin2.data(), AR_CCharsSearch.data(),
AR_CCharsOrigin1.size(), AR_CCharsOrigin2.size(), AR_CCharsSearch.size(), AR_CCharsOrigin1.size(), AR_CCharsOrigin2.size(), AR_CCharsSearch.size(),
RR(ARRL_SearchedPos1) , RR(ARRL_SearchedPos2) , RR(ARRL_SearchedLen1) , RR(ARRL_SearchedLen2) RR(ARRL_SearchedPos1) , RR(ARRL_SearchedPos2) , RR(ARRL_SearchedLen1) , RR(ARRL_SearchedLen2)
/*//////////*/ ); );
/*++++++++++++++++++++++++++++++*/
}/* }/*
template<typename TTyChars> static TypeLength FindPosLinear( ///// template<typename TTyChars> static TypeLength FindPosLinear( /////
const TTyChars& AR_CCharsOrigin1 , const TTyChars& AR_CCharsOrigin1 ,