commit 2025-08-19 21:19 edit a bit ZCppMain/ZtCStringEx.H
This commit is contained in:
@ -3503,7 +3503,7 @@ namespace ZNsMain
|
||||
)
|
||||
/*################################################################*/
|
||||
{
|
||||
typedef typename TSplitList::TypeData CString; TSplitList VO_CStringList;
|
||||
typedef typename TSplitList::TypeData ZCString; TSplitList VO_CStringList;
|
||||
|
||||
/*/////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@ -3546,12 +3546,12 @@ namespace ZNsMain
|
||||
|
||||
if(VL_Index>VL_CopyStartPos)
|
||||
{
|
||||
((CString&)VO_CStringList).append
|
||||
((ZCString&)VO_CStringList).append
|
||||
(
|
||||
APC_OriginChar+VL_CopyStartPos,
|
||||
VL_Index -VL_CopyStartPos
|
||||
) ;
|
||||
/////////////////////////////////
|
||||
//////////////////////////////////
|
||||
}/*
|
||||
if(VL_Index>VL_CopyStartPos)*/
|
||||
|
||||
@ -3634,7 +3634,7 @@ namespace ZNsMain
|
||||
/* bool AB_DoExecNull 이 true 이면 구분 문자로 잘린 문자열 길이
|
||||
가 0 인 경우에도 AO_TFunctor 를 수행한다. */
|
||||
|
||||
if(AL_OriginLen<1) return; int VL_SearchCount=0; /*####################*/
|
||||
if(AL_OriginLen<1) return; int VL_SearchCount=0;
|
||||
|
||||
if(AL_SearchLen<1)
|
||||
{
|
||||
@ -3656,13 +3656,13 @@ namespace ZNsMain
|
||||
{
|
||||
if(APC_OriginChar[VL_Index+j]!=APC_SearchChar[j]) break;
|
||||
}/*
|
||||
for(j=0; j<AL_SearchLen; ++j)*/
|
||||
///////////////////////////*/
|
||||
|
||||
if(j!=AL_SearchLen) // 못찾은 경우
|
||||
{
|
||||
++VL_Index; continue;
|
||||
}/*
|
||||
if(j!=AL_SearchLen)*/
|
||||
/////////////////*/
|
||||
|
||||
// 찾은 경우
|
||||
|
||||
@ -3775,7 +3775,7 @@ namespace ZNsMain
|
||||
|
||||
/////////////////////////////////////////////////////////////////////*/
|
||||
|
||||
typedef typename TStringList::TypeData CString;
|
||||
typedef typename TStringList::TypeData ZCString;
|
||||
|
||||
if(AL_OriginLen<1) return ARR_SaveList;
|
||||
|
||||
@ -3807,25 +3807,25 @@ namespace ZNsMain
|
||||
{
|
||||
if(AB_DoAppendEachLink==true)
|
||||
{
|
||||
((CString&)ARR_SaveList).append
|
||||
((ZCString&)ARR_SaveList).append
|
||||
(
|
||||
APC_OriginChar+VL_CopyStartPos, VL_Index-VL_CopyStartPos
|
||||
) ;
|
||||
///////////////////////////////
|
||||
////////////////////////////////
|
||||
}
|
||||
else
|
||||
{
|
||||
((CString&)ARR_SaveList).Invalidate().append
|
||||
((ZCString&)ARR_SaveList).Invalidate().append
|
||||
(
|
||||
APC_OriginChar+VL_CopyStartPos, VL_Index-VL_CopyStartPos
|
||||
) ;
|
||||
////////////////////////////////////////////
|
||||
/////////////////////////////////////////////
|
||||
}/*
|
||||
else*/
|
||||
}
|
||||
else if(AB_DoAppendEmpty==true)
|
||||
{
|
||||
(CString&)ARR_SaveList;
|
||||
(ZCString&)ARR_SaveList;
|
||||
}/*
|
||||
else if(AB_DoAppendEmpty==true)*/
|
||||
|
||||
@ -4052,7 +4052,7 @@ namespace ZNsMain
|
||||
{
|
||||
// ARR_SaveList 의 각 원소들은 문자열 object 이어야 한다.
|
||||
|
||||
typedef typename TSaveList::TypeData CString;
|
||||
typedef typename TSaveList::TypeData ZCString;
|
||||
|
||||
if(AL_OriginLen<1 || AL_SearchLen<1) return ARR_SaveList;
|
||||
|
||||
@ -4062,7 +4062,7 @@ namespace ZNsMain
|
||||
TypeLength VL_Loop =AL_OriginLen-AL_SearchLen;
|
||||
TypeLength VL_Index =0 ;
|
||||
|
||||
CString VO_CStringTemp ;
|
||||
ZCString VO_CStringTemp ;
|
||||
|
||||
while(VL_Index<=VL_Loop)
|
||||
{
|
||||
@ -4267,7 +4267,7 @@ namespace ZNsMain
|
||||
// APC_SearchChar이 가리키는 각 문자들 중 하나라도 만족하면
|
||||
// 그 문자로 분리해서 ARR_SaveList 에 저장한다.
|
||||
|
||||
typedef typename TStringList::TypeData CString;
|
||||
typedef typename TStringList::TypeData ZCString;
|
||||
|
||||
if(AL_OriginLen<1 || AL_SearchLen<1) return ARR_SaveList;
|
||||
|
||||
@ -4290,7 +4290,7 @@ namespace ZNsMain
|
||||
{
|
||||
if(i>VL_CopyStartPos)
|
||||
{
|
||||
((CString&)ARR_SaveList).append
|
||||
((ZCString&)ARR_SaveList).append
|
||||
( VP_CopyStartChar, i-VL_CopyStartPos ) ;
|
||||
}/*
|
||||
if(i>VL_CopyStartPos)*/
|
||||
@ -4304,7 +4304,7 @@ namespace ZNsMain
|
||||
|
||||
if(VL_CopyStartPos<AL_OriginLen)
|
||||
{
|
||||
((CString&)ARR_SaveList).append
|
||||
((ZCString&)ARR_SaveList).append
|
||||
(VP_CopyStartChar, AL_OriginLen-VL_CopyStartPos) ;
|
||||
}/*
|
||||
if(VL_CopyStartPos<AL_OriginLen)*/
|
||||
@ -4828,7 +4828,7 @@ namespace ZNsMain
|
||||
같으면 임시 object 가 생성디는 문제가 있어서 STL 과 호환되게 하지는 않고
|
||||
있다. */
|
||||
|
||||
typedef typename TypeList::TypeData CString;
|
||||
typedef typename TypeList::TypeData ZCString;
|
||||
|
||||
if(AL_OriginLen<1 || AL_Search1Len<1 || AL_Search2Len<1)
|
||||
{
|
||||
@ -4854,12 +4854,12 @@ namespace ZNsMain
|
||||
|
||||
if(AB_DoIncludeSearch==true)
|
||||
{
|
||||
((CString&)ARR_SaveList).Invalidate().append(
|
||||
((ZCString&)ARR_SaveList).Invalidate().append(
|
||||
APC_OriginChar+VL_Pos1 , VL_Pos2-VL_Pos1+AL_Search2Len) ;
|
||||
}
|
||||
else if(VL_Pos2>VL_Pos1+AL_Search1Len) // AB_DoIncludeSearch==false
|
||||
{
|
||||
((CString&)ARR_SaveList).Invalidate().append(
|
||||
((ZCString&)ARR_SaveList).Invalidate().append(
|
||||
APC_OriginChar+VL_Pos1+AL_Search1Len, VL_Pos2-VL_Pos1-AL_Search1Len) ;
|
||||
|
||||
// APC_Search1Char 와 APC_Search2Char 사이에 문자열이 하나 이상 있어야 한다.
|
||||
@ -8286,13 +8286,13 @@ namespace ZNsMain
|
||||
/*//////////*/ )
|
||||
{
|
||||
#ifdef _DEBUG_FAST_MOVE_OBJ_
|
||||
cout<<" ▶▶ __FastMoveObj(CString&, CString&) Start!"<<endl;
|
||||
cout<<" ▶▶ __FastMoveObj(ZCString&, ZCString&) Start!"<<endl;
|
||||
#endif //_DEBUG_FAST_MOVE_OBJ_
|
||||
|
||||
AR_CString1.Fetch(AR_CString2);
|
||||
|
||||
#ifdef _DEBUG_FAST_MOVE_OBJ_
|
||||
cout<<" ▶▶ __FastMoveObj(CString&, CString&) Close!"<<endl;
|
||||
cout<<" ▶▶ __FastMoveObj(ZCString&, ZCString&) Close!"<<endl;
|
||||
#endif //_DEBUG_FAST_MOVE_OBJ_
|
||||
}/*
|
||||
template<typename TTypCh, typename TAlloc, typename TAllocSize, typename TTypeString>
|
||||
@ -8311,13 +8311,13 @@ namespace ZNsMain
|
||||
typedef ZNsMain::ZtCStringBase<TTypCh, TAlloc, TAllocSize, TTypeString> CStringType;
|
||||
|
||||
#ifdef _DEBUG_FAST_MOVE_OBJ_
|
||||
cout<<" ▶▶ __FastMoveObj(CString&, const CString&) Start!"<<endl;
|
||||
cout<<" ▶▶ __FastMoveObj(ZCString&, const ZCString&) Start!"<<endl;
|
||||
#endif //_DEBUG_FAST_MOVE_OBJ_
|
||||
|
||||
AR_CString1.Fetch(const_cast<CStringType&>(AR_CString2));
|
||||
|
||||
#ifdef _DEBUG_FAST_MOVE_OBJ_
|
||||
cout<<" ▶▶ __FastMoveObj(CString&, const CString&) Close!"<<endl;
|
||||
cout<<" ▶▶ __FastMoveObj(ZCString&, const ZCString&) Close!"<<endl;
|
||||
#endif //_DEBUG_FAST_MOVE_OBJ_
|
||||
}/*
|
||||
template<typename TTypCh, typename TAlloc, typename TAllocSize, typename TTypeString>
|
||||
|
Reference in New Issue
Block a user