commit 2025-08-24 00:58 edit a bit ZCppMain/ZtCMainChars.H

This commit is contained in:
2025-08-24 00:58:41 +09:00
parent 0c436c267f
commit dc87b4023a

View File

@ -2383,7 +2383,7 @@ namespace ZNsMain
if(VL_MatchLen>0) ARR_CStrReadyBuff.append
(VO_CCharsOrigin.data()+ARRL_ValidLen, VL_MatchLen);
return false;
return false; //////
}/*
if(VL_ReadyBuffSize+AR_CCharsOrigin.size()<AR_CCharsSearch.size())*/
@ -2540,13 +2540,15 @@ namespace ZNsMain
//////////////////////////////////////////////////////////////////////////////*/
static TypeLength GetStartLength( ////////////////////////////////
TypeCharC* APC_Origin ,
TypeCharC* APC_Search ,
TypeLength AL_OriginLen,
TypeLength AL_SearchLen,
TypeLength AL_SearchOffset=0
/*//////////*/ ) ///////////////////////////////////////////////*/
static TypeLength GetStartLength /*#############################*/
(
TypeCharC* APC_Origin ,
TypeCharC* APC_Search ,
TypeLength AL_OriginLen,
TypeLength AL_SearchLen,
TypeLength AL_SearchOffset=0
)
/*##############################################################*/
{
const bool CB_IsBad =
(AL_OriginLen<1 || AL_SearchLen<1 || AL_SearchLen-AL_SearchOffset<1) ;
@ -2555,30 +2557,36 @@ namespace ZNsMain
if(AL_OriginLen<AL_SearchLen-AL_SearchOffset)
{
const bool CB_IsOK=ZtCMainChars::DoStart(
APC_Origin, APC_Search+AL_SearchOffset,
AL_OriginLen, AL_OriginLen
/*/////////*/ );
const bool CB_IsOK = ZtCMainChars::DoStart
(
APC_Origin, APC_Search+AL_SearchOffset,
AL_OriginLen, AL_OriginLen
);
//////////////////////////////////////////
if(CB_IsOK==false) return 0; return AL_OriginLen;
}/*
if(AL_OriginLen<AL_SearchLen-AL_SearchOffset)*/
const bool CB_IsOK=ZtCMainChars::DoStart(
APC_Origin, APC_Search +AL_SearchOffset,
AL_OriginLen, AL_SearchLen-AL_SearchOffset
/*/////////*/ );
const bool CB_IsOK = ZtCMainChars::DoStart
(
APC_Origin, APC_Search +AL_SearchOffset,
AL_OriginLen, AL_SearchLen-AL_SearchOffset
);
//////////////////////////////////////////
if(CB_IsOK==false) return 0; return AL_SearchLen-AL_SearchOffset;
}/*
TypeLength GetStartLength( ///////////////////////////////////////
TypeCharC* APC_Origin ,
TypeCharC* APC_Search ,
TypeLength AL_OriginLen,
TypeLength AL_SearchLen,
TypeLength AL_SearchOffset=0
////////////// ) ///////////////////////////////////////////////*/
TypeLength GetStartLength ########################################
(
TypeCharC* APC_Origin ,
TypeCharC* APC_Search ,
TypeLength AL_OriginLen,
TypeLength AL_SearchLen,
TypeLength AL_SearchOffset=0
)
/*##############################################################*/
template<typename TTyChars> static TypeLength GetStartLength(
const TTyChars& AR_CCharsOrigin, const TTyChars& AR_CCharsSearch, TypeLength AL_SearchOffset=0)
@ -2607,7 +2615,8 @@ namespace ZNsMain
{
ZtCTypeData<TFunctor>::GetObjRef(AO_Functor)
(APC_OriginChar, AL_OriginLen, ++VI_SearchCount);
return;
return; ////////////////////////////////////
}/*
if(AL_SearchLen<1)*/
@ -2938,8 +2947,8 @@ namespace ZNsMain
if(AL_OriginLen<1 || AL_OriginLen<AL_SearchLen)
{
return ARR_SaveList;
}/*
if(AL_OriginLen<1 || AL_OriginLen<AL_SearchLen)*/
}
/*///////////////////////////////////////////*/
TypeLength VL_PrevSize =ARR_SaveList.size();
TypeLength VL_SearchPos=0;
@ -2949,12 +2958,17 @@ namespace ZNsMain
while(VL_SearchPos<AL_OriginLen)
{
VL_SearchLen += ZtCMainChars::GetWrapLen(
APC_OriginChar+VL_SearchPos, APC_WrapStart , APC_WrapClose,
AL_OriginLen -VL_SearchPos, AL_WrapStartLen, AL_WrapCloseLen );
VL_FindPos = ZtCMainChars::FindPos (
APC_OriginChar, APC_SearchChar, AL_OriginLen,
AL_SearchLen , VL_SearchPos+VL_SearchLen ) ;
VL_SearchLen += ZtCMainChars::GetWrapLen
(
APC_OriginChar+VL_SearchPos, APC_WrapStart , APC_WrapClose,
AL_OriginLen -VL_SearchPos, AL_WrapStartLen, AL_WrapCloseLen
);
VL_FindPos = ZtCMainChars::FindPos
(
APC_OriginChar, APC_SearchChar, AL_OriginLen,
AL_SearchLen , VL_SearchPos+VL_SearchLen
) ;
/////////////////////////////////////////////////////
if(VL_FindPos<1)
{
@ -3062,7 +3076,8 @@ namespace ZNsMain
TStringArray& ARA_SearchArray
/*//////////*/ ) ///////////////////////////////////////////////*/
{
typedef typename TStringList::TypeData CStringData;
typedef typename
TStringList::TypeData CStringData;
CStringData* VP_CStringStart=0;
@ -3072,18 +3087,20 @@ namespace ZNsMain
while(VL_SearchPos<AL_OriginLen)
{
VL_FindPos=ZtCMainChars::FindPosEscWrap(
APC_Origin+VL_SearchPos ,
APC_Escape ,
APC_WrapStart ,
APC_WrapClose ,
AL_OriginLen-VL_SearchPos,
AL_EscapeLen ,
AL_WrapStartLen ,
AL_WrapCloseLen ,
ARA_SearchArray ,
RR(VP_CStringStart)
/*/////////*/ );
VL_FindPos = ZtCMainChars::FindPosEscWrap
(
APC_Origin+VL_SearchPos ,
APC_Escape ,
APC_WrapStart ,
APC_WrapClose ,
AL_OriginLen-VL_SearchPos,
AL_EscapeLen ,
AL_WrapStartLen ,
AL_WrapCloseLen ,
ARA_SearchArray ,
RR(VP_CStringStart)
);
/////////////////////////////////////////
if(VL_FindPos<0)
{
@ -3105,7 +3122,7 @@ namespace ZNsMain
}/*
if(VL_FindPos>0)*/
VL_SearchPos+=VL_FindPos+VP_CStringStart->size();
VL_SearchPos += VL_FindPos + VP_CStringStart->size();
}/*
while(VL_SearchPos<AL_OriginLen)*/
@ -3353,8 +3370,8 @@ namespace ZNsMain
for(j=0; j<AL_SearchLen; ++j)
{
if(*VP_Left++ != *VP_Right++) break;
}/*
for(j=0; j<AL_SearchLen; ++j)*/
}
/*/////////////////////////*/
if(j>=AL_SearchLen) return i+AL_SearchLen;
@ -3397,11 +3414,13 @@ namespace ZNsMain
for(TypeLength i=0; i<VL_ArrSize; ++i)
{
VL_NowSize=ZtCMainChars::GetLength_Find(
APC_Origin, AL_OriginLen,
ARA_SearchArray.ItD(CI_IterEasyID).data(),
ARA_SearchArray.ItD(CI_IterEasyID).size()
/*/////////*/ );
VL_NowSize = ZtCMainChars::GetLength_Find
(
APC_Origin, AL_OriginLen,
ARA_SearchArray.ItD(CI_IterEasyID).data(),
ARA_SearchArray.ItD(CI_IterEasyID).size()
);
/////////////////////////////////////////
if(VL_NowSize>0) return VL_NowSize;
@ -3434,21 +3453,21 @@ namespace ZNsMain
TypeLength j =0 ;
TypeCharC* VP_Origin =APC_Origin;
TypeCharC* VP_Left ;
TypeCharC* VP_Right;
TypeCharC* VP_Left =0 ;
TypeCharC* VP_Right =0 ;
for(TypeLength i=0; i<AL_OriginLen; ++i)
{
VP_Left =VP_Origin ;
VP_Right=APC_Search;
VP_Left = VP_Origin ;
VP_Right = APC_Search ;
// 문자를 찾았으면 찾은 위치 i 에 찾은 문자 길이 1 을 더해서 리턴한다.
for(j=0; j<AL_SearchLen; ++j)
{
if(*VP_Left++ == *VP_Right++) return i+1;
}/*
for(j=0; j<AL_SearchLen; ++j)*/
}
/*/////////////////////////*/
++VP_Origin;
}/*
@ -3486,12 +3505,14 @@ namespace ZNsMain
for(TypeLength i=0; i<VL_ArrSize; ++i)
{
VL_SumSize += VL_NowSize=ZtCMainChars::GetLength_FindChar(
APC_Origin +VL_SumSize ,
AL_OriginLen-VL_SumSize ,
ARA_SearchArray.ItD(CI_IterEasyID).data(),
ARA_SearchArray.ItD(CI_IterEasyID).size()
/*/////////*/ );
VL_SumSize += VL_NowSize=ZtCMainChars::GetLength_FindChar
(
APC_Origin +VL_SumSize ,
AL_OriginLen-VL_SumSize ,
ARA_SearchArray.ItD(CI_IterEasyID).data(),
ARA_SearchArray.ItD(CI_IterEasyID).size()
);
/////////////////////////////////////////////////////////
if(VL_NowSize<1) return 0;
@ -3745,8 +3766,8 @@ namespace ZNsMain
if(*VP_Origin++ == *VP_Search)
{
++VL_FindCnt; --VL_SearchLen; VL_NowPos=i+1; ++VP_Search;
}/*
if(*VP_Origin++ == *VP_Search)*/
}
/*//////////////////////////*/
if(VL_SearchLen<1) break;
}/*
@ -3841,12 +3862,12 @@ namespace ZNsMain
IterEasyIDc CI_IterEasyID(ARA_SearchArray.GetHeadIterEasyID());
const bool CB_IsOK=ZtCMainChars::DoStart
const bool CB_IsOK = ZtCMainChars::DoStart
(
APC_Origin, ARA_SearchArray.ItD(CI_IterEasyID).data(),
AL_Length , ARA_SearchArray.ItD(CI_IterEasyID).size()
);
////////////////////////////////////////
//////////////////////////////////////////
if(!CB_IsOK) return 0;
@ -3926,8 +3947,8 @@ namespace ZNsMain
if(*VP_Origin++ == *VP_Search)
{
++VL_FindCnt; --VL_SearchLen; VL_NowPos=i+1; ++VP_Search;
}/*
if(*VP_Origin++ == *VP_Search)*/
}
/*//////////////////////////*/
if(VL_SearchLen<1) break;
}/*
@ -4012,12 +4033,12 @@ namespace ZNsMain
for(TypeLength i=0; i<VL_ArrSize; ++i)
{
const bool CB_IsOK=ZtCMainChars::DoStart
const bool CB_IsOK = ZtCMainChars::DoStart
(
APC_Origin, ARA_SearchArray.ItD(CI_IterEasyID).data(),
AL_Length , ARA_SearchArray.ItD(CI_IterEasyID).size()
);
////////////////////////////////////////
//////////////////////////////////////////
if(CB_IsOK) return
ARA_SearchArray.ItD(CI_IterEasyID).size() ;
@ -4151,8 +4172,8 @@ namespace ZNsMain
if(*VPC_Origin== *VPC_Permit++)
{
++VL_SearchLen; break;
}/*
if(*VPC_Origin== *VPC_Permit++)*/
}
/*///////////////////////////*/
}/*
for(; j<AL_PermitLength; ++j)*/
@ -4209,8 +4230,8 @@ namespace ZNsMain
if(*VPC_Origin>=*VPC_Permit && *VPC_Origin<=*(VPC_Permit+1))
{
++VL_SearchLen; break;
}/*
if(*VPC_Origin>=*VPC_Permit && *VPC_Origin<=*(VPC_Permit+1))*/
}
/*////////////////////////////////////////////////////////*/
VPC_Permit+=2;
}/*
@ -4266,7 +4287,9 @@ namespace ZNsMain
);
//////////////////////////////////////
if(VL_SearchNow<1) return 0; VL_SearchSum+=VL_SearchNow;
if(VL_SearchNow<1) return 0 ;
VL_SearchSum += VL_SearchNow;
ARA_SearchArray.MoveNextIter(RR(CI_IterEasyID));
}/*
@ -4322,7 +4345,10 @@ namespace ZNsMain
);
///////////////////////////////////////////////////
if(VL_SearchNow<1) return 0; ARA_SearchArray.MoveNextIter(RR(CI_IterEasyID));
if(VL_SearchNow<1) return 0;
ARA_SearchArray.
MoveNextIter( RR(CI_IterEasyID) );
}/*
for(TypeLength i=0; i<VL_ArrSize; ++i)*/
@ -4628,8 +4654,8 @@ namespace ZNsMain
if(*VPC_Origin>=*VPC_Permit && *VPC_Origin<=*(VPC_Permit+1))
{
++VL_SearchLen; break;
}/*
if(*VPC_Origin>=*VPC_Permit && *VPC_Origin<=*(VPC_Permit+1))*/
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
VPC_Permit+=2;
}/*
@ -4680,14 +4706,19 @@ namespace ZNsMain
for(TypeLength i=0; i<VL_ArrSize; ++i)
{
VL_SearchSum += VL_SearchNow=GetLength_NoPermitCharRange(
APC_Origin+VL_SearchSum ,
AL_Length -VL_SearchSum ,
ARA_SearchArray.ItD(CI_IterEasyID).data(),
ARA_SearchArray.ItD(CI_IterEasyID).size()
/*//////////*/ );
VL_SearchSum += VL_SearchNow = GetLength_NoPermitCharRange
(
APC_Origin+VL_SearchSum ,
AL_Length -VL_SearchSum ,
ARA_SearchArray.ItD(CI_IterEasyID).data(),
ARA_SearchArray.ItD(CI_IterEasyID).size()
);
//////////////////////////////////////////////////////////
if(VL_SearchNow<1) return 0; ARA_SearchArray.MoveNextIter(RR(CI_IterEasyID));
if(VL_SearchNow<1) return 0;
ARA_SearchArray.
MoveNextIter( RR(CI_IterEasyID) );
}/*
for(TypeLength i=0; i<VL_ArrSize; ++i)*/