una ultimo numeros extraer eliminar ejemplo cortar caracteres caracter cadena buscar javascript trim slice chop

ultimo - JavaScript cortar/cortar/recortar el último carácter de la cadena



substring javascript ejemplo (20)

@Jason S:

¡Puedes usar slice! Solo debe asegurarse de saber cómo usarlo. Los # positivos son relativos al comienzo, los números negativos son relativos al final.

js> "12345.00" .slice (0, -1) 12345.0

Lo siento por mi graphomany pero la publicación fue etiquetada ''jquery'' antes. Por lo tanto, no puede usar slice () dentro de jQuery porque slice () es el método jQuery para operaciones con elementos DOM, no subcadenas ... En otras palabras, responda @Jon Erickson, sugiera una solución realmente perfecta.

Sin embargo, su método funcionará a partir de la función jQuery, dentro de Javascript simple. Necesito decir debido a la última discusión en comentarios, que jQuery es mucho más a menudo la extensión renovable de JS que su propio padre ECMAScript más conocido.

Aquí también existen dos métodos:

como el nuestro:

string.substring(from,to) como más si el índice ''to'' nulled devuelve el resto de la cadena. string.substring(from) : string.substring(from) positivo o negativo ...

y algún otro - substr () - que proporciona el rango de subcadena y ''longitud'' puede ser solo positivo: string.substr(start,length)

También algunos mantenedores sugieren que el último método string.substr(start,length) no funciona o funciona con error para MSIE.

Tengo una cadena, 12345.00 , y me gustaría que devuelva 12345.0 .

He visto trim , pero parece que solo está recortando espacios en blanco y slice lo que no veo cómo funcionaría. ¿Alguna sugerencia?


¡Puedes usar slice ! Solo debes asegurarte de que sabes cómo usarlo. Los # positivos son relativos al comienzo, los números negativos son relativos al final.

js>"12345.00".slice(0,-1) 12345.0


El método más fácil es usar el método de división de la cadena, que permite las posiciones negativas (correspondientes a los desplazamientos desde el final de la cadena):

var s = "your string"; var withoutLastFourChars = s.slice(0, -4);

Si necesitabas algo más general para eliminar todo después (e incluido) del último subrayado, podrías hacer lo siguiente (siempre que s garantice que contiene al menos un guión bajo):

var s = "your_string"; var withoutLastChunk = s.slice(0, s.lastIndexOf("_")); // withoutLastChunk == "your"


En los casos en que desee eliminar algo que esté cerca del final de una cadena (en el caso de cadenas de tamaño variable), puede combinar slice () y substr ().

Tenía una cadena con marcado, construida dinámicamente, con una lista de etiquetas de ancla separadas por comas. La cadena era algo así como:

var str = "<a>text 1,</a><a>text 2,</a><a>text 2.3,</a><a>text abc,</a>";

Para eliminar la última coma, hice lo siguiente:

str = str.slice(0, -5) + str.substr(-4);


Para un número como tu ejemplo, recomendaría hacerlo sobre una substring :

alert(parseFloat(''12345.00'').toFixed(1)); // 12345.0

Sin embargo, tenga en cuenta que esto realmente redondeará el número, lo que me imagino que se desea, pero tal vez no:

alert(parseFloat(''12345.46'').toFixed(1)); // 12345.5


Prueba esto:

var myString = "Hello World!"; myString.slice(0, -1);


Prueba esto:

<script> var x="foo_foo_foo_bar"; for (var i=0; i<=x.length; i++) { if (x[i]=="_" && x[i+1]=="b") { break; } else { document.write(x[i]); } } </script>

También puede probar el ejemplo de funcionamiento en vivo en http://jsfiddle.net/informativejavascript/F7WTn/87/ .


Puede usar la función de subcadena :

var str = "12345.00"; str = str.substring(0, str.length - 1); // "12345.0"

Esta es la respuesta aceptada, pero según las conversaciones a continuación, la sintaxis del sector es mucho más clara:

var str = "12345.00"; str = str.slice(0, -1); // "12345.0"


Puede utilizar el método de subcadena de objetos de cadena de JavaScript:

s = s.substring(0, s.length - 4)

Elimina incondicionalmente los últimos cuatro caracteres de la cadena s .

Sin embargo, si desea eliminar condicionalmente los últimos cuatro caracteres, solo si son exactamente _bar :

var re = /_bar$/; s.replace(re, "");


Qué tal si:

var myString = "12345.00"; myString.substring(0, myString.length - 1);


Si quieres hacer un redondeo genérico de flotantes, en lugar de simplemente recortar el último carácter:

var float1 = 12345.00, float2 = 12345.4567, float3 = 12345.982; var MoreMath = { /** * Rounds a value to the specified number of decimals * @param float value The value to be rounded * @param int nrDecimals The number of decimals to round value to * @return float value rounded to nrDecimals decimals */ round: function (value, nrDecimals) { var x = nrDecimals > 0 ? 10 * parseInt(nrDecimals, 10) : 1; return Math.round(value * x) / x; } } MoreMath.round(float1, 1) => 12345.0 MoreMath.round(float2, 1) => 12345.5 MoreMath.round(float3, 1) => 12346.0

EDITAR: Parece que existe una función incorporada para esto, como señala Paolo. Esa solución es obviamente mucho más limpia que la mía. Utilice parseFloat seguido de toFixed


Una expresión regular es lo que estás buscando:

var str = "foo_bar"; alert(str.replace(/_bar$/, ""));


Usando la función de corte de JavaScript:

var string = ''foo_bar''; string = string.slice(0, -4); // Slice off last four characters here

Esto podría usarse para eliminar ''_bar'' al final de una cadena, de cualquier longitud.


Use la subcadena para obtener todo a la izquierda de _bar. Pero primero debes obtener el instr de _bar en la cadena:

str.substring(3, 7);

3 es ese comienzo y 7 es la longitud.


Use regex:

var aStr = "12345.00"; aStr = aStr.replace(/.$/, '''');



if(str.substring(str.length - 4) == "_bar") { str = str.substring(0, str.length - 4); }


var str = "test!"; var newStr = str.slice(0,-1); //test


debris = string.split("_") //explode string into array of strings indexed by "_" debris.pop(); //pop last element off the array (which you didn''t want) result = debris.join("_"); //fuse the remainng items together like the sun


"a string".match(/(.*).$/)[1] // => a strin "a string".match(/(.*).$/) // returns ["a string", "a strin"] "a string".match(/(.*).{2}$/)[1] // to get two chars off => a stri

  1. (. *), captura cualquier caracter varias veces
  2. ., coincide con el último carácter, en este caso
  3. $, coincide con el final de la cadena