Postado Novembro 29, 2012 12 anos ..:: String Tutorial ::.. O que são strings? São seqüências ordenadas de caracteres, símbolos, escolhidos a partir de um conjunto pré-determinado. Manipulando Strings A biblioteca string provê funções com diversas utilidades, para manipulação de strings (cadeias de caracteres, como explicado acima). Como exemplos, podemos citar a localização e extração de subcadeias, além de casamento de padrões. Em lua, o primeiro caractere da indexação vai estar na posição 1, e não na 0 (como em C). Os índices podem ter valores negativos, e nesse caso serão interpretados como uma indexação de trás pra frente, começando do final da cadeira. Logo, o ultimo caractere está na posição -1, e assim por diante. OBS: Na sintaxe das funções citadas abaixo, os parâmetros entre colchetes são facultativos. Byte Descrição: Retorna o código numérico interno dos caracteres, cada caractere possui um numero, vide tabela Ascii. Sintaxe: string.byte(string [, n]), aonde string é a Cadeia de caracteres, e n a posição do caractere que você deseja pegar o número interno onde o valor padrão é 1. Exemplo: >> string.byte("Eu sou uma string.") = 69 -- 69 é o numero interno do caractere "E" >> string.byte("Eu sou uma string.", 1) = 69 >> string.byte("Eu sou uma string.", 2) = 117 -- 117 é o numero interno do caractere "u" >> string.byte("Eu sou uma string.", -1) = 46 -- 46 é o numero interno do caractere "." >> string.byte("Eu sou uma string.", -2) = 103 -- 103 é o numero interno do caractere "g" Char Descrição: Faz o inverso o string.byte citado acima, ele transforma o código numérico interno dos caracteres no caractere em si. Sintaxe: string.char(numero1 [, numero2, ...]) aonde cada parâmetro conterá o numero interno do caractere desejado, podendo ter infinitos parâmetros. Exemplo: >> string.char(69) = "E" >> string.char(117) = "u" >> string.char(69, 117) = "Eu" Len Descrição: Retorna o numero de caracteres da cadeia. Sintaxe: string.len(string), onde string é a Cadeia de caracteres. Exemplo: >> string.len("Eu sou uma string.") = 18 -- numero de caracteres desta cadeia >> string.len("Eu sou uma outra string.") = 24 -- numero de caracteres desta cadeia Lower Descrição: Converte todos os caracteres maiúsculos, de uma cadeia, para minúsculos e apenas copia os outros. Sintaxe: string.lower(string), aonde string é a cadeia de caracteres. Exemplo: >> string.lower("Eu Sou Uma String.") = "eu sou uma string" -- cadeia convertida para minúscula >> string.lower("eU sOu OuTrA StRiNg.") = "eu sou outra string" -- cadeia convertida para minúscula Upper Descrição: Converte todos os caracteres minúsculos, de uma cadeia, para maiúsculos e apenas copia os outros. Sintaxe: string.upper(string), aonde string é a cadeia de caracteres. Exemplo: >> string.upper("Eu Sou Uma String.") = "EU SOU UMA STRING" -- cadeia convertida para maiúscula >> string.upper("eU sOu OuTrA StRiNg.") = "EU SOU OUTRA STRING" -- cadeia convertida para maiúscula Rep Descrição: Retorna uma cadeia que é a conexão de cópias da string. Sintaxe: string.rep(string, n), onde string é a cadeia de caracteres e n é o número de cópias de string a serem ligadas. Exemplo: >> string.rep("Eu Sou Uma String.",2) = "Eu Sou Uma String.Eu Sou Uma String." -- conexão das cadeias. >> string.rep("Eu Sou Uma String.",3) = "Eu Sou Uma String.Eu Sou Uma String.Eu Sou Uma String." -- conexão das cadeias. Reverse Descrição: Retorna a cadeia de caracteres ao contrário, do fim para inicio. Sintaxe: string.reverse(string), aonde string é a cadeia de caracteres. Exemplo: >> string.reverse("Eu Sou Uma String.") = ".gnirtS amU uoS uE" -- cadeia invertida. >> string.reverse("Eu Sou Outra String.") = ".gnirtS artuO uoS uE" -- cadeia invertida. Sub Descrição: Retorna uma subcadeia da cadeia de caracteres. Sintaxe: string.sub(string, n [, z]), onde string é a cadeia de caracteres, n é onde a subcadeia começa e z é onde a subcadeia termina. Se z for ausente, a função assume ele como igual a -1, que será o final da cadeia. Exemplo: >> string.sub("Eu Sou Uma String.",1,9) = "Eu Sou Um" -- Subcadeia, de 1 ("E" de "Eu") à 9 ("m" de "Uma") >> string.sub("Eu Sou Outra String.") = "Sou Uma Outra String." -- Subcadeia, de 4 ("S" de "Sou") à -1 (".", que é o fim da cadeia) Match Descrição: Procura o primeiro casamento de pattern na cadeia de caracteres1. Se encontrar um, o match retornará as capturas do padrão, caso contrário retorna nil. Sintaxe: string.match(string, pattern [, init]) onde string é a cadeia de caracteres, pattern é o 'pedaço' que se que localizar e init é a posição que você deseja iniciar a verificação. Exemplo: >> string.match("Eu sou uma string.", "s.") = so -- O símbolo '.', no pattern, representa qualquer outro caractere >> string.match("Eu sou uma string.", "s.", 7) = st -- Como aqui a verificação é depois do 7° caractere a primeira parte que se encaixou com o pattern foi o 'st' >> string.match("Eu sou uma string.", "s.", 8) = nil -- Depois da posição 8, não foi encontrado subcadeias que se encaixem com o pattern --Logo colocarei um tutorial de pattern Find Descrição: Procura a posição, começo e fim, de uma subcadeia de caracteres, caso não encontrar retorna nil. Ela é semelhante a Match, só que esta retorna somente a posição. Sintaxe: string.find(string, pattern [, init]) onde string é a cadeia de caracteres, pattern é o 'pedaço' que se que localizar e init é a posição que você deseja iniciar a verificação. Exemplo: >> string.find("Eu sou uma string.", "Eu") = 1, 2 >> string.find("Eu sou uma string.", "eu") = nil -- Pois "Eu" é diferente de "eu" >> string.find("Eu sou uma string.", "sou uma") = 4, 10 Creditos Jovial Contato; god.marinii ryzor@tibiaking.com
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.