[ Nexacro.String -  token 추출 ]

 


/******************************************************************************************
 * 기능 : 문자열에서  토큰값 찾기
 * 인자 : sVal - 찾을 문자열
 *         sStartToken - 시작 토큰값
 *         sEndToken   - 종료 토큰값 (만약 종료 토큰을 못찾으면  마지막 값까지 찾아서 return)
 * 리턴 : 토큰에 대한 결과값
 * 예문 : gfn_TokenParsing1("NAME=김상무,DEPT=인사부,", "NAME=", ',')
 *****************************************************************************************/

function gfn_TokenParsing(sVal, sStartToken, sEndToken)

{

    var nStartPos;

    var nEndPos  ;

    

    if (gfn_IsNull(sEndToken)) sEndToken = ',';

    

    // 1. 시작 token

    nStartPos = sVal.indexOf(sStartToken);

    if (nStartPos < 0) return ''

    

    // 2. 종료 token

    if (gfn_IsNull(sEndToken)){

        nEndPos = String(sVal).length;

    }else{

        nEndPos = sVal.indexOf(sEndToken  , nStartPos);

        

        if (nEndPos < 0) nEndPos = String(sVal).length;

    }

    

    if (nEndPos < 0) return '';

    

    var rtn = sVal.substring(nStartPos + sStartToken.length, nEndPos).trim();

    

    if (gfn_IsNull(rtn)) rtn = '';

 

    return rtn;

}

 

/******************************************************************************************
 * 기능 : 문자열에서  토큰값 위치 찾기
 * 인자 : sVal   - 문자열
 *         sToken - 찾을 토큰
 *         nSeq   - 해당 동일 토큰이 여러개 존재 할 경우 몇번째 토큰을 찾을 순서
 * 리턴 : 토큰에 대한 위치
 * 예문 :
 *****************************************************************************************/

function gfn_TokenPosition(sVal, sToken, nSeq)

{

    var nStart=0;

    var nPos;

    

    sVal = sVal.toString();

    for(var i=1; i<=nSeq; i++){

        nPos = sVal.indexOf(sToken, nStart);

        nStart = nPos + sToken.length;

    }

    

    return nPos;

}

 

 

☞  

 

☞  

 
 
 
 

  

 

'Nexacro-Function > String' 카테고리의 다른 글

Nexacro.String - 문자열 치환  (0) 2017.01.28
Nexacro.String - 문자열 찾기  (0) 2017.01.28
Nexacro.String - padding  (0) 2017.01.28
Nexacro.String - Trim  (0) 2017.01.28
Nexacro.String - 문자 검증  (0) 2017.01.28
Posted by 농부지기
,