Expressão Regular

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Expressão Regular

Wesley Galdino de Farias
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Wesley Galdino de Farias
Consegui remover os ZEROS, usando string.sub
ainda falta adicionar ":"





Em domingo, 29 de outubro de 2017 17:08:18 UTC-2, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Wesley Galdino de Farias
Agora sim, consegui, usando string.sub.

O script ficou dessa forma:

function username (pkt)
var=string.sub (pkt: agent_circuit_id(), 13,24)
        m1 = string.sub (var, '-12', -'11')
        m2 = string.sub (var, '-10', '-9')
        m3 = string.sub (var, '-8', '-7')
        m4 = string.sub (var, '-6', '-5')
        m5 = string.sub (var, '-4', '-3')
        m6 = string.sub (var, '-2', '-1')
        mac = m1 .. ':' .. m2 .. ':' .. m3 .. ':' .. m4 .. ':' .. m5 .. ':' .. m6
return mac
end



Em domingo, 29 de outubro de 2017 17:51:14 UTC-2, Wesley Galdino de Farias escreveu:
Consegui remover os ZEROS, usando string.sub
ainda falta adicionar ":"





Em domingo, 29 de outubro de 2017 17:08:18 UTC-2, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Eric Chiesse
Tenta isso:

macString = "0000000000008014a857d370"
macStringFormated = string.gsub(macString, ".-(%w%w)(%w%w)(%w%w)(%w%w)(%w%w)(%w%w)$", "%1:%2:%3:%4:%5:%6")

---
Eric

2017-10-29 18:23 GMT-02:00 Wesley Galdino de Farias <[hidden email]>:
Agora sim, consegui, usando string.sub.

O script ficou dessa forma:

function username (pkt)
var=string.sub (pkt: agent_circuit_id(), 13,24)
        m1 = string.sub (var, '-12', -'11')
        m2 = string.sub (var, '-10', '-9')
        m3 = string.sub (var, '-8', '-7')
        m4 = string.sub (var, '-6', '-5')
        m5 = string.sub (var, '-4', '-3')
        m6 = string.sub (var, '-2', '-1')
        mac = m1 .. ':' .. m2 .. ':' .. m3 .. ':' .. m4 .. ':' .. m5 .. ':' .. m6
return mac
end



Em domingo, 29 de outubro de 2017 17:51:14 UTC-2, Wesley Galdino de Farias escreveu:
Consegui remover os ZEROS, usando string.sub
ainda falta adicionar ":"





Em domingo, 29 de outubro de 2017 17:08:18 UTC-2, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Eric Chiesse
Melhor ainda: usar %x em vez de %w já que os valores são somente hexadecimais.

E seguindo sua idéia de encapsular em uma função fica:

function formatMacAddr(macStr)
    return string.gsub(macStr, ".-(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)(%x%x)$", "%1:%2:%3:%4:%5:%6")
end

Nota:
Cuidado com a tua função "username" pois você não declarou as variáveis como locais. Logo todas as variáveis que vc criou são globais e podem colidir com outras fora do escopo da função.


---
Eric

2017-10-29 22:57 GMT-02:00 Eric Chiesse <[hidden email]>:
Tenta isso:

macString = "0000000000008014a857d370"
macStringFormated = string.gsub(macString, ".-(%w%w)(%w%w)(%w%w)(%w%w)(%w%w)(%w%w)$", "%1:%2:%3:%4:%5:%6")

---
Eric

2017-10-29 18:23 GMT-02:00 Wesley Galdino de Farias <[hidden email]>:
Agora sim, consegui, usando string.sub.

O script ficou dessa forma:

function username (pkt)
var=string.sub (pkt: agent_circuit_id(), 13,24)
        m1 = string.sub (var, '-12', -'11')
        m2 = string.sub (var, '-10', '-9')
        m3 = string.sub (var, '-8', '-7')
        m4 = string.sub (var, '-6', '-5')
        m5 = string.sub (var, '-4', '-3')
        m6 = string.sub (var, '-2', '-1')
        mac = m1 .. ':' .. m2 .. ':' .. m3 .. ':' .. m4 .. ':' .. m5 .. ':' .. m6
return mac
end



Em domingo, 29 de outubro de 2017 17:51:14 UTC-2, Wesley Galdino de Farias escreveu:
Consegui remover os ZEROS, usando string.sub
ainda falta adicionar ":"





Em domingo, 29 de outubro de 2017 17:08:18 UTC-2, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.


--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Denis Dos Santos Silva
In reply to this post by Wesley Galdino de Farias
cuidado... com eliminar todos os zeros a esquerda.

endereço mac de uma máquina virtual: 0A-00-27-00-00-ff (virtualbox)



Em domingo, 29 de outubro de 2017 16:08:18 UTC-3, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Diego Nascimento
tem que cortar, deixar só os 12 dígitos da direita do número.

Em 30 de outubro de 2017 13:12, Denis Dos Santos Silva <[hidden email]> escreveu:
cuidado... com eliminar todos os zeros a esquerda.

endereço mac de uma máquina virtual: 0A-00-27-00-00-ff (virtualbox)



Em domingo, 29 de outubro de 2017 16:08:18 UTC-3, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Expressão Regular

Diego Nascimento
se os zeros são em quantidades aleatórias, se conta o número total de dígitos, menos 12, e se faz o slice nessa posição até o final da string.

Em 30 de outubro de 2017 13:17, Diego Nascimento <[hidden email]> escreveu:
tem que cortar, deixar só os 12 dígitos da direita do número.

Em 30 de outubro de 2017 13:12, Denis Dos Santos Silva <[hidden email]> escreveu:
cuidado... com eliminar todos os zeros a esquerda.

endereço mac de uma máquina virtual: 0A-00-27-00-00-ff (virtualbox)



Em domingo, 29 de outubro de 2017 16:08:18 UTC-3, Wesley Galdino de Farias escreveu:
Boa tarde
Não sou programador mas, preciso extrair uma parte de uma string.

Gostaria de extrair apenas uma parte de uma string e adicionar ":" 
Nessa string 0000000000008014a857d370

Gostaria de eliminar os ZEROS e adicionar ":" deixando dessa forma

80:14:a8:57:d3:70

Algúem pode me ajudar.

Obrigado, desde já.

--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.


--
Você recebeu essa mensagem porque está inscrito no grupo "Lua BR" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para [hidden email].
Acesse esse grupo em https://groups.google.com/group/lua-br.
Para mais opções, acesse https://groups.google.com/d/optout.