Se me ocurren dos formas: La primera, usando una estructura repetitiva y, la segunda, con expresiones regulares.
Con un bucle
while
:
Código Javascript
:
Ver originalvar string = "Hello...";
while (string.lastIndexOf(".") > -1){
string = string.substr(0, string.length - 1);
}
console.log(string); //Imprime "Hello"
Con una expresión regular:
Código Javascript
:
Ver originalvar string = "Hello...",
regexp = /^(\w+)(\.+)$/;
string = string.replace(regexp, "$1");
console.log(string); //Imprime "Hello"
En la primera, busco al final de la cadena si hay un punto, de ser así, asigno a
string
el contenido de sí misma, desde el inicio hasta una posición antes del final, eliminando así el punto encontrado. El ciclo se vuelve a repetir mientras siga encontrando puntos al final hasta que no quede ninguno.
En la segunda, la expresión regular contiene dos grupos. En el primero, agrupamos a todos los caracteres alfanuméricos (números y letras), teniendo que haber de uno a más, mientras que en el segundo, agrupamos a los puntos que se encuentren a la derecha del primer grupo. Luego, reemplazamos la coincidencia encontrada por el primer grupo, es decir, en donde solamente están los caracteres alfanuméricos antes de el o los puntos del final.
Saludos