Como obter extensões de arquivo com JavaScript?

Foto de Brett Jordan no Unsplash

Às vezes, podemos querer obter a extensão do arquivo de um caminho de arquivo.

Neste artigo, veremos como obter a extensão do arquivo de um caminho com JavaScript.

String.prototype.split

Podemos usar o splitmétodo da string JavaScript para obter a extensão de um caminho de arquivo, obtendo a substring que está após o último ponto no caminho.

Por exemplo, podemos escrever:

const ext = '/home/foo/bar.txt'.split('.').pop();
console.log(ext)

E então pedimos poppara remover o último item da string dividida e devolvê-lo.

E assim exté 'txt'.

Regex Match

Também podemos combinar a extensão do arquivo com Regex.

Por exemplo, podemos escrever:

const filename = '/home/foo/bar.txt'
const ext = (/[.]/.exec(filename)) ? /[^.]+$/.exec(filename) : undefined;
console.log(ext)

Em seguida, procuramos pontos na filenamestring com exec.

Se houver pontos na string, verificamos se há algo que comece com um ponto no final da string.

O cifrão significa no final da string.

E os ^meios começam com.

Esta seria a extensão do arquivo.

Portanto, obtemos o mesmo resultado de antes.

String.prototype.substring e String.prototype.lastIndexOf

Podemos usar o lastIndexOfmétodo de uma string para obter o índice da última instância de uma substring.

E podemos combinar isso com o substringmétodo para extrair a substring de extensão de arquivo.

Por exemplo, podemos escrever:

const filename = '/home/foo/bar.txt'
const ext = filename.substring(filename.lastIndexOf('.') + 1, filename.length) || filename;
console.log(ext)

E filename.lengthé o índice final.

Então, extdeve ser igual ao outro valor.

String.prototype.slice e String.prototype.lastIndexOf

Podemos usar em slicevez de substringpara extrair uma substring de uma string JavaScript.

Portanto, podemos usá-lo para obter a extensão do arquivo a partir de um caminho de arquivo com ele.

Para usá-lo, escrevemos:

const filename = '/home/foo/bar.txt'
const ext = filename.slice((Math.max(0, filename.lastIndexOf(".")) || Infinity) + 1)
console.log(ext)

Um caminho pode começar com um ponto, então é possível que o índice seja 0.

Em seguida, adicionamos 1 para obter o índice excluindo o próprio ponto.

Portanto, obtemos o mesmo resultado de antes.

Conclusão

Podemos usar vários métodos de string JavaScript para extrair a extensão do arquivo de uma string.

Mais conteúdo em plainenglish.io . Assine nosso boletim informativo semanal gratuito . Obtenha acesso exclusivo a oportunidades de redação e conselhos em nossa comunidade Discord .

Suggested posts

Encontrar informações sobre nomes de domínio

Um trecho de Small, Sharp Software Tools por Brian P. Hogan

Encontrar informações sobre nomes de domínio

Quando você faz uma solicitação para facebook.com, seu computador procura o nome de domínio para traduzir esse nome de domínio em um endereço IP para que seu computador possa fazer essa conexão.

Dicas para fazer a transição para a segurança cibernética sem conhecimento técnico.

Dicas para fazer a transição para a segurança cibernética sem conhecimento técnico.

Em 2022, fiz a transição de uma função não técnica para a segurança cibernética. Eu tive meu primeiro diploma em língua alemã, sei que você está chocado e curioso sobre como consegui fazer a transição com sucesso. Bem, simplesmente aconteceu.

Related posts

A revolução no local de trabalho: os principais especialistas discutem o trabalho híbrido e remoto

A revolução no local de trabalho: os principais especialistas discutem o trabalho híbrido e remoto

No atual cenário de negócios em rápida evolução, o conceito de trabalho híbrido e remoto ganhou um impulso sem precedentes. À medida que as empresas continuam a se adaptar às mudanças nas necessidades e expectativas de seus funcionários, especialistas de várias áreas se reuniram para discutir os benefícios, os desafios e o futuro dessa forma transformadora de trabalhar.

pronomes são super assustadores

Isso me atinge De repente, como tantas vezes acontece É o meio do caminho tudo de novo <Não, não aquele no Pacífico, seu marrom, aquele no carnaval> Todas as manchetes em voz alta…..

Rede de TV Twitter

Rede de TV Twitter

O que é velho agora é novo de novo e o que costumava ser a coisa brilhante e brilhante agora parece opaco. Não estou falando de jeans JNCO fazendo um retorno entre os garotos legais do centro da cidade junto com outras modas do final dos anos 1990.

Coletando OSINT para caçar ameaças

Coletando OSINT para caçar ameaças

Olá, entusiastas cibernéticos! Bem-vindo de volta ao OSINT para a série de caça a ameaças. No primeiro artigo, apresentei uma visão geral do OSINT e sua importância na caça às ameaças.