/*
 * Nome:        TrocaListaCaracterPorString
 * Autor:       NaBoa Solutions - Marcela Pimenta
 * Data:        06/08/2003
 * Descrição:   Dentro da string 'strDado' troca todas as ocorrências de cada 
 *                      caracter informado na 'strListaCaracter' pela string 
 *                      'strPor'
 * Entrada:     strDado - string que será verificada
 *              strListaCaracter - lista de caracteres que serão substituídos
 *              strPor - string que será colocada no local de cada caracter de
 *                      'strListaCaracter'
 *              strCaseSensitive - apenas informar 'i' (minúsculo) ou 'vazio'
 *                      quando i não é case sensitive
 *                      quando vazio é case sensitive
 * Saída:       String strDado após substituir cada caracter de strListaCaracter
 *                      por strPor
 * Exemplo:     TrocaListaCaracterPorString( "testeTESTE", "te", "", "i" )
 *                      ==> sS
 *              TrocaListaCaracterPorString( "testeTESTE", "te", "", "" )
 *                      ==> sTESTE
 * Observação:  1.) No strListaCaracter para trabalhar com a lista de caracteres
 *                      abaixo é necessário colocar a barra invertida (\) na
 *                      frente de cada caracter.
 *                      \  |  [  ]  (  )  .  ?  $  +  * -
 *              Ex.: TrocaListaCaracterPorString( "1.234,56", "\.,", "", "" )
 *                      ==> 123456
 *              Ex.: TrocaListaCaracterPorString( "1.23+45", "\.\+", "", "" )
 *                      ==> 12345
 *              2.) No strListaCaracter podemos utilizar a lista de caracteres
 *                      especiais abaixo.
 *                      \f   Form Feed
 *                      \n   Line Feed
 *                      \r   Carriage Return
 *                      \t   Tabulação Horizontal
 *                      \v   Tabulação Vertical
 *                      \r\n é o 'enter' em alguns editores de texto
 *              3.) Quando queremos trocar todos os caracteres da string
 *                      (strDado) EXCETO aqueles informados na lista 
 *                      (strListaCaracter) basta iniciar a lista com o caracter
 *                      ^ sem a barra invertida na frente.
 *              Ex.: TrocaListaCaracterPorString( "1.2/3-4", "^01234", "",
 *                      "" ) ==> 1234
 *              Ex.: TrocaListaCaracterPorString( "1^2-3", "^\^\-", "", "" )
 *                      ==> ^-
 */
function TrocaListaCaracterPorString (strDado, strListaCaracter, strPor, strCaseSensitive) {
    var strExpressao;
    /* 
     * Expressão regular onde:
     * new RegExp - declaração da expressão
     * [...] - procura por cada caracter da lista 'strListaCaracter'
     * g - procura em toda a string (global)
     * strIgnoreCase - se 'i' procura sem diferenciar maiúsculas e minúsculas
     */
    strExpressao = new RegExp("[" + strListaCaracter + "]", "g" + strCaseSensitive) ;
    return strDado.replace(strExpressao, strPor);
}

/*
 * Nome:        TrocaEnter
 * Autor:       NaBoa Solutions - Marcela Pimenta
 * Data:        06/08/2003
 * Descrição:   Retira todos os enters de uma string e os troca por <br>'s
 * Entrada:     strDado - string que será verificada
 * Saída:       String strDado após substituir cada enter por <br>
 */
function TrocaEnter(strDado) {
    var strAux;
    strAux = strDado.split(unescape("%0D")+unescape("%0A"));
    return strAux.join("<br>");
}

/*
 * Nome:        TrocaBr
 * Autor:       NaBoa Solutions - Marcela Pimenta
 * Data:        06/08/2003
 * Descrição:   Retira todos os <br>'s de uma string e os troca por enters
 * Entrada:     strDado - string que será verificada
 * Saída:       String strDado após substituir cada <br> por enter
 */
function TrocaBr(strDado) {
    var strAux;
    strAux = strDado.split("<br>");
    return strAux.join(unescape("%0D")+unescape("%0A"));
}
