2012-03-13 15 views
8

Tengo un url:¿Cómo puedo cortar una subcadena de una cadena hasta el final usando Javascript?

http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe 

Quiero obtener la dirección después del último guión usando javascript:

dashboard.php?page_id=projeto_lista&lista_tipo=equipe 
+0

Hola Erick, el enlace que compartiste está en tu máquina local, por lo que no está visible. Si reformula su pregunta con un simple fragmento de código de lo que tiene actualmente, entonces puedo intentar responder – Rowan

+0

¿Su subcadena siempre comenzará '/ dashboard ...'? Editar: @Rowan, el enlace es solo un ejemplo de la cadena de la que está intentando cortar la subcadena. Espero. –

+0

Jaja, oops.Fail :) Escuche @Elliot - me confundió, ya que aparece como un enlace, la reacción natural es hacer clic en – Rowan

Respuesta

16

Usted puede utilizar indexOf y substr para obtener la sub-cadena que desea:

//using a string variable set to the URL you want to pull info from 
//this could be set to `window.location.href` instead to get the current URL 
var strIn = 'http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe', 

    //get the index of the start of the part of the URL we want to keep 
    index = strIn.indexOf('/dashboard.php'), 

    //then get everything after the found index 
    strOut = strIn.substr(index); 

La variable strOut ahora contiene todo después de /dashboard.php (incluida esa cadena).

Aquí es una demostración: http://jsfiddle.net/DupwQ/

Docs -

+1

¡Perfecto! ¡Gracias! –

4

El método nativo JavaScript cadena substr[MDN] puede lograr lo que necesita . Solo proporcione el índice de inicio y omita el parámetro de longitud, y lo agarra hasta el final.

Ahora, ¿cómo obtener el índice inicial? No dio ningún criterio, así que no puedo ayudar con eso.

+0

No creo que sea tan fácil. substr no puede encontrar un grupo específico de caracteres. –

+0

Sí. Para eso, necesitarías encontrar el índice inicial. – FishBasketGordo

4

Si el comienzo es siempre "http: // localhost/40ATV" se puede hacer esto:

var a = "http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe"; 
var cut = a.substr(22); 
+1

Puede ser útil explicar cómo funciona algo a veces en lugar de simplemente responder la pregunta con una respuesta utilitaria. substr/substring e indexOf son todas operaciones importantes que pueden/deben ser cubiertas. – Tracker1

+0

Gracias por la entrada. Soy nuevo por aquí, así que por favor desnudo conmigo :) – fruitcup

+0

No hay problema ... solo ofreciendo consejos para respuestas más constructivas. :) – Tracker1

1

No hay necesidad de jQuery, el viejo y simple javascript va a hacer el trabajo igual multa.

var myString = "http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe"; 
var mySplitResult = myString.split("\/"); 
document.write(mySplitResult[mySplitResult.length - 1]);​ 

y si desea que el líder/

document.write("/" + mySplitResult[mySplitResult.length - 1]);​ 
0

En primer lugar SPLIT URL:

var str = "http://localhost/40ATV/dashboard.php?page_id=projeto_lista&lista_tipo=equipe"; 
var arr_split = str.split("/"); 

Encuentra la última matriz:

var num = arr_split.length-1; 

Se obtiene el anuncio vestir después del último guión:

alert(arr_split[num]); 
1

Esto puede ser nuevo, pero el método substring devuelve todo, desde un índice especificado al final de la cadena.

var string = "This is a test"; 

console.log(string.substring(5)); 
// returns "is a test" 
Cuestiones relacionadas