O que significa a expressão regular / _ / g?

94

JavaScript:

.replace(/_/g," ");

Eu tenho isso no meu código, mas não consigo lembrar por que ou o que faz! Um de vocês, gurus de expressões regulares, pode ajudar?

Sei que isso pode parecer básico, mas expressões regulares não são meu estilo e pesquisar por /gnão ajudou muito.

Tom
fonte
apenas para adicionar ... você pode usar / / gi para não diferenciar maiúsculas de minúsculas! Às vezes você quer mudar palavras em uma string ou parágrafo, mas acontece que algumas delas estão no início de uma frase, então elas estão na maioria dos casos em letras maiúsculas, se você usar apenas o g, ele substituirá apenas deixe diga "anjos" e se esqueça dos "anjos" ou vice-versa, depende do que você coloca como argumentos. ps: Isso funciona com o método replace () em JavaScript.
A.McLoof

Respostas:

151

A regex corresponde ao _caractere.

O gsignifica Global e faz com que a replacechamada substitua todas as correspondências, não apenas a primeira.

SLaks
fonte
26

Como todo mundo já disse, ele substitui todos os sublinhados por espaços. Então "Hello_there."se tornaria"Hello there."

Mas junto com a resposta, quero sugerir algo para você. Use comentários.

Em seu código, diga algo como:

// Replaces all underscores so that blah blah blah blah blah..
var hello = "Hello_there."
    .replace(/_/g, ' ');
McKayla
fonte
2

Retorna uma nova string com todos os sublinhados na string de origem substituídos por espaços.

Roy Tinker
fonte