Pregunta ¿Cómo puedo obtener los últimos caracteres de una cadena usando JavaScript?


yo tengo

var id="ctl03_Tabs1";

Usando JavaScript, ¿cómo podría obtener los últimos cinco caracteres o el último personaje?


540
2018-05-03 18:12


origen


Respuestas:


Querrá utilizar el método de cadena de Javascript .substr() combinado con el .length propiedad.

var id = "ctl03_Tabs1";
var lastFive = id.substr(id.length - 5); // => "Tabs1"
var lastChar = id.substr(id.length - 1); // => "1"

Esto hace que los caracteres comiencen en id.length - 5 y, dado que el segundo argumento para .substr () se omite, continúa hasta el final de la cadena.

También puedes usar el .slice() método como otros han señalado a continuación.

Si simplemente busca los personajes después del guión bajo, puede usar esto:

var tabId = id.split("_").pop(); // => "Tabs1"

Esto divide la cadena en una matriz en el guión bajo y luego "saca" el último elemento de la matriz (que es la cadena que desea).


852
2018-05-03 18:19



No usar .substr(). Utilizar el .slice() método en su lugar porque es compatible con navegador cruzado (ver IE).

var id = "ctl03_Tabs1";
id.slice(-5); //Outputs: Tabs1
id.slice(-1); //Outputs: 1

substr () con valor negativo no funciona en IE


647
2018-03-18 09:41



Obtener el último carácter es fácil, ya que puedes tratar las cadenas como una matriz:

var lastChar = id[id.length-1];

Para obtener una sección de una cadena, puede usar substr función o el subcadena función:

id.substr(id.length-1); //get the last character
id.substr(2); //get the characters from the 3rd character on
id.substr(2, 1); //get the 3rd character
id.susbstr(2, 2); //get the 3rd and 4th characters

La diferencia entre substr y substring es cómo se trata el segundo parámetro (opcional). En substr, es la cantidad de caracteres del índice (el primer parámetro). En substring, es el índice de dónde debe terminar el corte de caracteres.


52
2018-05-03 18:21



Puedes usar el método substr () con una posición inicial negativa para recuperar los últimos n caracteres. Por ejemplo, esto obtiene los últimos 5:

var lastFiveChars = id.substr(-5);

44
2018-06-18 13:25



La siguiente secuencia de comandos muestra el resultado para obtener los últimos 5 caracteres y los últimos 1 caracteres en una cadena usando JavaScript:

var testword='ctl03_Tabs1';
var last5=testword.substr(-5); //Get 5 characters
var last1=testword.substr(-1); //Get 1 character

Salida:

Tabs1 // Tienes 5 caracteres

1 // Tengo 1 personaje


21
2018-04-18 04:52



No hay necesidad de usar substr método para obtener un solo carácter de una cadena!

tomando el ejemplo de Jamon Holmgren podemos cambiar el método substr y simplemente especificar la posición del arreglo:

var id = "ctl03_Tabs1";
var lastChar = id[id.length - 1]; // => "1"

7
2017-07-05 12:55



Revisar la función de subcadena.

Para obtener el último personaje:

id.substring(id.length - 1, id.length);

6
2018-05-03 18:15



Suponiendo que comparas la subcadena contra el final de otra cadena y usas el resultado como booleano, puedes extender la clase String para lograr esto:

String.prototype.endsWith = function (substring) {
  if(substring.length > this.length) return false;
  return this.substr(this.length - substring.length) === substring;
};

Permitiéndole hacer lo siguiente:

var aSentenceToPonder = "This sentence ends with toad"; 
var frogString = "frog";
var toadString = "toad";
aSentenceToPonder.endsWith(frogString) // false
aSentenceToPonder.endsWith(toadString) // true

2
2018-01-24 00:51



Si solo quieres el último personaje o cualquier personaje en la posición de conocimiento, simplemente puedes trazar la cadena como una matriz. - Las cadenas son iterables en javascript -

Var x = "hello_world";
 x[0];                    //h
 x[x.length-1];   //d

Sin embargo, si necesita más de un carácter, entonces el uso del empalme es efectivo

x.slice(-5);      //world

En cuanto a tu ejemplo

"rating_element-<?php echo $id?>"

Para extraer la identificación, puedes usar fácilmente split + pop

Id= inputId.split('rating_element-')[1];

Esto devolverá la identificación, o indefinido si no había una identificación después de 'calificar_elemento' :)


2
2017-11-17 22:47



Este eliminará la coma si es el último personaje de la cadena.

var str = $("#ControlId").val();

if(str.substring(str.length-1)==',') {

  var stringWithoutLastComma = str.substring(0,str.length-1);    

}

0
2017-08-30 06:00