Module sintra_5_57_0_0-sintra.string

Funções adicionais para manipulação de strings.

O módulo "herda" de string, então pode ser usado em substituição a este.

Veja também SplitJoin

Functions

gsplit (s, pat) Extrai as substrings a partir de um separador.
asplit (s, f, sep_ou_opt) Aplica uma função às substrings de uma dada string, dado um separador.
split2array (s, sep, tab) Guarda todas as substrings em uma tabela.
split2record (s, sep, tab) Guarda todas as substrings em uma tabela.
rmsp (s) Remove os espaços do início e do fim de uma string.
notempty (s) Verifica se uma string é não-vazia (descontando espaços).
capitalize (s) "Formata" uma string, colocando as iniciais em maiúsculas e o resto em minúsculas.
scomp (st) Iterador real das palavras das strings, segundo seus ponteiros.
gcomp (s1, s2, sep) Iterador que compara palavras de duas strings.
h_min (s) Tenta formatar uma string para o padrão "DDh MMmin".
tohex (s, largura) Mostra a string e seus códigos em hexadecimal.
subs (s, t) Cria uma nova string a partir de um modelo e de uma tabela de entradas.
criaremoveacentos (cod) Cria função que substitui os acentos (e outros caracteres não-ASCII) por letras simples.
utf8sub (s, i, j) Cria uma nova string a partir de uma parte de outra string, respeitando os caracteres UTF-8 (codepoints), independente de quantos bytes cada um precisar para ser representado na string.
utf8upper (s) Transforma a string UTF-8 em maiúsculas, inclusive com acentos.
utf8lower (s) Transforma a string UTF-8 em minúsculas, inclusive com acentos.
latin2utf8 (s) Converte uma string em Latin1 (ISO-8859-1) para UTF-8, se necessário.


Functions

gsplit (s, pat)
Extrai as substrings a partir de um separador. O separador pode ser definido através de um padrão de Lua. Código original por Rici Lake em mensagem da lua-l

Parameters:

  • s String a ser processada.
  • pat String com o separador.

Returns:

    Iterador que retorna uma substring, seguida das capturas indicadas no padrão.

Usage:

    for palavra in string.gsplit (frase, "%s+") do
      print(palavra)
    end
asplit (s, f, sep_ou_opt)
Aplica uma função às substrings de uma dada string, dado um separador. Também toma cuidado com a presença do separador dentro de substrings entre aspas.

Parameters:

  • s String a ser processada.
  • f Função de processamento de cada substring (será chamada com um único parâmetro, a substring, e não precisa retornar nada).
  • sep_ou_opt String com o separador (default = ';') ou Tabela de opções (campos válidos: separator, empty_strings).

Usage:

    string.asplit (frase, print, ' ')
split2array (s, sep, tab)
Guarda todas as substrings em uma tabela.

Parameters:

  • s String a ser processada.
  • sep String com o separador (default = ';').
  • tab Tabela onde as substrings serão armazenadas (opcional).

Returns:

    Tabela representando um array de substrings.

See also:

Usage:

    t = string.split2array (frase, ' ') --> { "palavra1", "palavra2", ... }
    string.split2array (frase, ' ', t) -- insere na tabela dada
split2record (s, sep, tab)
Guarda todas as substrings em uma tabela.

Parameters:

  • s String a ser processada.
  • sep String com o separador (default = ';').
  • tab Tabela onde as substrings serão armazenadas (opcional).

Returns:

    Tabela representando um conjunto de substrings.

See also:

Usage:

    t = split2record (frase, ' ') --> { palavra1 = true, palavra2 = true, ... }
rmsp (s)
Remove os espaços do início e do fim de uma string. Também reduz espaços múltiplos por um caractere único.

Parameters:

  • s String original (ou nil).

Returns:

    String ou nil, caso não seja fornecida nenhuma string.

See also:

Usage:

  • string.rmsp ("  a   b  ") == "a b"
  • string.rmsp"    " == ''
notempty (s)
Verifica se uma string é não-vazia (descontando espaços).

Parameters:

  • s String original.

Returns:

    String sem espaços ou nil, caso seja uma string vazia ou nil.

See also:

Usage:

  • string.notempty"b" --> "b"
  • string.notempty' ' --> nil
capitalize (s)
"Formata" uma string, colocando as iniciais em maiúsculas e o resto em minúsculas. A função identifica algumas preposições e não as converte. Baseada em string.upper, portanto não funciona direito com UTF-8.

Parameters:

  • s String a ser convertida.

Returns:

    String "formatada".

Usage:

    string.capitalize"FULANO DE TAL" == "Fulano de Tal"
scomp (st)
Iterador real das palavras das strings, segundo seus ponteiros.

Parameters:

  • st Tabela com os arrays de palavras de cada string e seus ponteiros.

Returns:

    String quando a palavra for igual, ou Tabela com as duas palavras, ou nil quando acabar.
gcomp (s1, s2, sep)
Iterador que compara palavras de duas strings.

Parameters:

  • s1 String a ser comparada.
  • s2 String a ser comparada.
  • sep String com o separador de palavras da string.

Returns:

    Iterador que retorna uma string ou uma tabela com as duas substrings diferentes.
h_min (s)
Tenta formatar uma string para o padrão "DDh MMmin".

Parameters:

  • s String a ser formatada.

Returns:

  1. String "formatada" ou nil, em caso de erro.
  2. nil ou String com mensagem de erro.

Usage:

  • string.h_min "12:30" == "12h 30min"
  • string.h_min "  12h   30  min  " == "12h 30min"
tohex (s, largura)
Mostra a string e seus códigos em hexadecimal.

Parameters:

  • s String a ser exibida.
  • largura Número da largura máxima do resultado (default = 68)

Returns:

    String formatada para exibição.

Usage:

    print(string.tohex"abc") --> abc                 61 62 63\n
subs (s, t)
Cria uma nova string a partir de um modelo e de uma tabela de entradas. A nova string irá ser o resultado da substituição de cada nome no modelo que esteja encerrado em dois cifrões, como em $$nome$$, pelo valor correspondente na tabela de entradas. Cada nome tem que ser um identificador, ou seja, não pode incluir pontuação nem espaços.

Parameters:

  • s String modelo.
  • t Tabela de entradas.

Returns:

    String com as substituições aplicadas.
criaremoveacentos (cod)
Cria função que substitui os acentos (e outros caracteres não-ASCII) por letras simples.

Parameters:

  • cod String com a codificação em uso (utf8 ou iso88591).

Returns:

    Função que recebe uma string e retorna uma nova string sem os acentos.
utf8sub (s, i, j)
Cria uma nova string a partir de uma parte de outra string, respeitando os caracteres UTF-8 (codepoints), independente de quantos bytes cada um precisar para ser representado na string. Implementação baseada na função fixUTF8 de Paul Kulchenko (para o ZeroBrane).

Parameters:

  • s String com a string original.
  • i Número com o índice do primeiro caractere UTF-8 (codepoint) da substring (default = 1).
  • j Número com o índice do último caractere UTF-8 (codepoint) da substring (default = -1).

Returns:

    String resultante do "corte".

Usage:

    string.utf8sub ("ação", 2, 3) --> "çã"
utf8upper (s)
Transforma a string UTF-8 em maiúsculas, inclusive com acentos.

Parameters:

  • s String original.

Returns:

    String resultante da operação.
utf8lower (s)
Transforma a string UTF-8 em minúsculas, inclusive com acentos.

Parameters:

  • s String original.

Returns:

    String resultante da operação.
latin2utf8 (s)
Converte uma string em Latin1 (ISO-8859-1) para UTF-8, se necessário.

Parameters:

  • s String original.

Returns:

    String em UTF-8.
generated by LDoc 1.4.6 Last updated 2024-09-26 20:37:35