반응형
script>

<!--

//---------------------------------------------------------------------------//

//                                StringUtil                                 //

//---------------------------------------------------------------------------//

 

/**----------------------------------------------------------------------------

 함수명 : removeWhiteSpace()

   : 문자열에 포함된 공백, 개행문자 제거

 인자값 : String strTarget - 문자열에 포함된

                             공백, 개행문자를 제거하고자하는 문자열

   : String - 좌우 공백이 제거된 문자열

 사용법 : var strResult = trim('  문 자 열  ');

          return '문자열'

-----------------------------------------------------------------------------*/

function removeWhiteSpace(strTarget)

{

    var strEliminate = /\s+/g;

 

    if(strTarget)

    {

        return strTarget.replace(strEliminate,"");

    }

    else

    {

        return strTarget;

    }

 }

 

 

/**----------------------------------------------------------------------------

 함수명 : trim()

   : 좌우 공백 제거

 인자값 : String strTarget - 좌우 공백을 없애고자하는 문자열

   : String - 좌우 공백이 제거된 문자열

 사용법 : var strResult = trim('  문 자 열  ');

          return '문 자 열'

-----------------------------------------------------------------------------*/

function trim(strTarget)

{

    var strEliminate = /(^\s*)|(\s*$)/gi;

   

    if(strTarget)

    {

        return strTarget.replace(strEliminate,"");

    }

    else

    {

        return strTarget;

    }

 }

 

 

/**----------------------------------------------------------------------------

 함수명 : ltrim()

   : 좌측 공백 제거

 인자값 : String strTarget - 좌측 공백을 없애고자하는 문자열

   : String - 좌측 공백이 제거된 문자열

 사용법 : var strResult = ltrim('  문 자 열  ');

          return '문 자 열 '

-----------------------------------------------------------------------------*/

 

function ltrim(strTarget)

{

    while(strTarget.substring(0,1)==" ")

    {

        strTarget = strTarget.substring(1);

    }

    return strTarget;

 }

 

 

/**----------------------------------------------------------------------------

 함수명 : rtrim()

   : 우측 공백 제거

 인자값 : String strTarget - 우측 공백을 없애고자하는 문자열

   : String - 우측 공백이 제거된 문자열

 사용법 : var strResult = rtrim('  문 자 열  ');

          return ' 문 자 열'

-----------------------------------------------------------------------------*/

function rtrim(strTarget)

{

    var len = strTarget.length;

   

    while(strTarget.substring(len-1,len)==" ")

    {

        strTarget = strTarget.substring(0,len-1);

        len = strTarget.length;

    }

    return strTarget;

 }

 

 

/**----------------------------------------------------------------------------

 함수명 : replaceAll()

   : 소스문자열에 포함된 문자를 원하는 문자로 변환

          공백 또는 '0'을 자리수만큼 채운 문자열

 인자값 : String strSrc - 소스 문자열

          String strOld - 총 자릿수

          String strNew - 숫자인가?             (옵션 default : false)

   : String - 소스 문자열을 포함해 원하는 위치에

                   공백 또는 '0'을 자리수만큼 채운 문자열

 사용법 : var strResult = packValue('1234', 8, true, true);

          return '00001234'

-----------------------------------------------------------------------------*/

function replaceAll(strSrc, strOld, strNew)

{

 

    var retValue = "";

 

    if(strOld == null)

    {

        return strSrc;

    }

    if (strSrc != "" && strOld != strNew)

    {

        retValue = strSrc;

 

        while (retValue.indexOf(strOld) > -1)

        {

            retValue = retValue.replace(strOld, strNew);

        }

    }

    return retValue;

}

 

 

// 문자 변환 함수 (=replaceAll() 함수와 동일)----------------------------------

function alterString(strSrc, strOld, strNew)

{

    var retValue = "";

 

    for(i = 0; i < strSrc.length; i++)

    {

        var value = strSrc.charAt(i);

        var index = strOld.indexOf(value);

 

        if(index >= 0)

        {

            value = strNew.charAt(index);

        }

        retValue += value;

    }

    return retValue;

}

 

 

/**----------------------------------------------------------------------------

 함수명 : formatString()

   : 포멧 문자열 변환

 인자값 : String strSrc    - 변환하고자 하는 문자열

          String strFormat - 포멧형식

          String strDelim  - 포멧 구분자 문자

   : String - 원하고자 하는 포멧으로 변환된 문자열

 사용법 : var strResult = formatString('20050512', '9999/99/99');

          return ' 문 자 열'

-----------------------------------------------------------------------------*/

function formatString(strSrc,strFormat)

{

    var retValue = "";

    var j = 0;

 

    var strSrc = strSrc.replace(/(\$|\^|\*|\(|\)|\+|\.|\?|\\|\{|\}|\||\[|\]|\-|\/|\:)/g, "");

 

    for (var i=0; i< strSrc.length; i++)

    {

        retValue += strSrc.charAt(i);

        j++;

 

        if ( (j < strSrc.length && j < strFormat.length)

              && (strFormat.charAt(j) != "9"

              && strFormat.charAt(j).toLower != "x"

              && strFormat.charAt(j) != "#")  )

        {

            retValue += strFormat.charAt(j++);

        }

    }

    return retValue;

}

 

 

/**----------------------------------------------------------------------------

 함수명 : packValue()

   : 소스 문자열을 포함해 원하는 위치에

          공백 또는 '0'을 자리수만큼 채운 문자열

 인자값 : String strSrc - 소스 문자열

          Int    nSize  - 총 자릿수

          bool   bNum   - 숫자인가?             (옵션 default : false)

          bool   bLeft  - 왼쪽에 위치할 것인지? (옵션 default : true )

   : String - 소스 문자열을 포함해 원하는 위치에

                   공백 또는 '0'을 자리수만큼 채운 문자열

 사용법 : var strResult = packValue('1234', 8, true, true);

          return '00001234'

-----------------------------------------------------------------------------*/

function packValue(strSrc, nSize, bNum, bLeft)

{

    var retValue = "";

    var preValue = "";

    var postValue = "";

    var nLen = 0;

    var i = 0;

 

    if(bNum == null)

    {

        bNum = false;

    }

    if(bLeft == null)

    {

        bLeft = true;

    }

 

    strSrc = "" + strSrc;

    nLen = strSrc.length;

    retValue = strSrc;

 

    if(bNum)

    {

        for(i = nLen; i < nSize; i++)

        {

            if(bLeft)

            {

                preValue += "0";

            }

            else

            {

                postValue += "0";

            }

        }

    }

    else

    {

        for(i = nLen; i < nSize; i++)

        {

            if(bLeft)

            {

                preValue += " ";

            }

            else

            {

                postValue += " ";

            }

        }

 

    }

    retValue = preValue + retValue + postValue;

 

    return retValue;

}

 

 

/**----------------------------------------------------------------------------

 함수명 : getByte()

   : 문자열의 바이트수 구하기

 인자값 : String strSrc - 소스 문자열

   : Int - 문자열 바이트수

 사용법 : var nResult = getByte('가나다1234');

          return 10

-----------------------------------------------------------------------------*/

function getByte(strSrc)

{  

//  var nByte = 0;

//  for(var i=0; i < strSrc.length; i++)

//  {

//      if(!((strSrc.charCodeAt(i) > 0x3130 && strSrc.charCodeAt(i) < 0x318F)

//          || (strSrc.charCodeAt(i) >= 0xAC00 && strSrc.charCodeAt(i) <= 0xD7A3)))

//      {

//          nByte += 1;

//      }

//      else

//      {

//          nByte += 2;

//      }

//  }

//  return nByte;

    return (strSrc.length+(escape(strSrc)+"%u").match(/%u/g).length - 1);

}

 

 

/**----------------------------------------------------------------------------

 함수명 : toUpper()

   : 소문자를 대문자로 변환

 인자값 : String strSrc - 소스 문자열

   : String - 대문자로 변환된 문자열

 사용법 : var strResult = toUpper('abc');

          return 'ABC'

-----------------------------------------------------------------------------*/

function toUpper(strSrc)

{

    var str1 = "abcdefghijklmnopqrstuvwxyz";

    var str2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

 

    return alterString(strSrc, str1, str2);

}

 

 

/**----------------------------------------------------------------------------

 함수명 : toLower()

   : 대문자를 소문자로 변환

 인자값 : String strSrc - 소스 문자열

   : String - 소문자로 변환된 문자열

 사용법 : var strResult = toLower('ABC');

          return 'abc'

-----------------------------------------------------------------------------*/

function toLower(strSrc)

{

    var str1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

    var str2 = "abcdefghijklmnopqrstuvwxyz";

 

    return alterString(strSrc, str1, str2);

}

 

 

/**----------------------------------------------------------------------------

 함수명 : removeComma()

   : 문자열에 포함된 ','를 제거

 인자값 : String strSrc - 소스 문자열

   : String - ','가 제거된 문자열

 사용법 : var nResult = removeComma('123,456,789');

          return '123456789'

-----------------------------------------------------------------------------*/

function removeComma(strSrc)

{

    return strSrc.replace(/,/gi,"");

}

 

 

/**----------------------------------------------------------------------------

 함수명 : removeFormat()

   : 문자열에 포함된 포멧문자 ", . - / :"를 제거

 인자값 : String strSrc - 소스 문자열

   : String - ", . - / :"가 제거된 문자열

 사용법 : var nResult = removeComma('2005/03/12 12:24:00');

          return '20050312 122400'

-----------------------------------------------------------------------------*/

function removeFormat(strSrc)

{

    return strSrc.replace(/(\,|\.|\-|\/|\:)/g,"");

}

 

 

/**----------------------------------------------------------------------------

 함수명 : addComma()

   : 문자열에 포함된 ','를 제거

 인자값 : String strSrc - 소스 문자열

          bool   bSymbol - '+' 부호일때 보일것인가?

   : String - ','가 제거된 문자열

 사용법 : var nResult = addComma('1234567.12', true);

          return '+1,234,567.12'

-----------------------------------------------------------------------------*/

function addComma(strSrc, bSymbol)

{

    var strSymbol = '';

    var retValue  = '';

    var strTempSymbol = '';

    var strTempDotValue = '';

 

    var nLen      = 0;

 

    try

    {

        if(bSymbol == null)

        {

            bSymbol = false;

        }

 

        strSrc = strSrc.trim();

 

        if(strSrc.indexOf('.') != 0)

        {

            var nIndex = strSrc.indexOf('.');

            strTempDotValue = strSrc.substring(nIndex);

            strSrc = strSrc.substring(0, nIndex);

        }

   

        strTempSymbol = strSrc.substr(0,1);

        if(strTempSymbol == '+')

        {

            strSymbol = '+';

            strSrc = strSrc.substring(1);

        }

        if(strTempSymbol == '-')

        {

            strSymbol = '-';

            strSrc = strSrc.substring(1);

        }

 

        nLen = strSrc.length;

 

        for(var i=1; i <= nLen; i++)

        {

            retValue = strSrc.charAt(nLen - i) + retValue;

 

            if((i % 3 == 0) && ((nLen - i) != 0))

            {

                retValue = "," + retValue;

            }

        }

 

        if(bSymbol)

        {

            if(strSymbol == '')

            {

                strSymbol = '+';

            }

        }

        else

        {

            if(strSymbol == '+')

            {

                strSymbol = '';

            }

        }

        return strSymbol + retValue + strTempDotValue;

    }

    catch(e)

    {

    }

}

 

 

 

/**----------------------------------------------------------------------------

   윗 함수 사용법 : trim('aaa'); -> 변수.trim(); 또는 문자열.trim();

-----------------------------------------------------------------------------*/

String.prototype.removeWhiteSpace = function()

{

    return removeWhiteSpace(this);

}

 

String.prototype.trim = function()

{

    return trim(this);

}

 

String.prototype.ltrim = function()

{

    return ltrim(this);

}

 

String.prototype.rtrim = function()

{

    return rtrim(this);

}

 

String.prototype.replaceAll = function(strOld, strNew)

{

    return replaceAll(this, strOld, strNew);

}

 

String.prototype.formatString = function(strFormat)

{

    return formatString(this, strFormat);

}

 

String.prototype.packValue = function(nSize, bNum, bLeft)

{

    return packValue(this, nSize, bNum, bLeft);

}

 

String.prototype.getByte = function()

{

    return getByte(this);

}

 

String.prototype.toUpper = function()

{

    return toUpper(this);

}

 

String.prototype.toLower = function()

{

    return toLower(this);

}

 

String.prototype.removeComma = function()

{

    return removeComma(this);

}

 

String.prototype.removeFormat = function()

{

    return removeFormat(this);

}

 

String.prototype.addComma = function(bSymbol)

{

    return addComma(this, bSymbol);

}

 

-->

</script>

Posted by 1010