Eu tenho uma corda como
var str=" , this, is a ,,, test string , , to find regex,,in js. , ";
em que existem vários espaços no início, meio e fim da string com vírgulas. Eu preciso dessa string em
var str="this is a test string to find regex in js.";
Eu encontrei muitos regex no fórum removendo espaços, vírgulas separadamente, mas eu não pude juntá-los para remover ambos.
Por favor, dê explicação do syntex regex para se possível.
desde já, obrigado
Respostas:
17 para resposta № 1Você pode simplesmente substituir cada espaço e vírgula por espaço e depois aparar esses espaços:
var str=" , this, is a ,,, test string , , to find regex,,in js. , ";
res = str.replace(/[, ]+/g, " ").trim();
1 para resposta № 2
você pode usar reg ex para este
/[,s]+|[,s]+/g
var str= "your string here";
//this will be new string after replace
str = str.replace(/[,s]+|[,s]+/g, "your string here");
1 para resposta № 3
Tente algo assim:
var new_string = old_string.replace(/[s,]+/g," ").trim();
O regex é simplesmente [s,]+
se fôssemos quebrar isso do s
significa QUALQUER caractere de espaço em branco e ,
é uma vírgula literal. o []
é um conjunto de caracteres (think array) e o +
significa uma ou mais correspondências.
Se você só queria um espaço e não qualquer espaço em branco, você poderia substituir o s
com um espaço literal também.
Nós jogamos em um /g
no final, para que ele faça uma pesquisa global e substitua, caso contrário, basta fazer apenas uma correspondência.
0 para a resposta № 4
Você deveria poder usar
str.replace (/, / g, "");
O "g" é a chave, você pode precisar usar [,]