Comment pourrais-je simplement extraire le texte 'androiddev' de la chaîne suivante en JavaScript?

https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/

J'ai essayé de le couper par l'arrière, mais je suis toujours coincé avec la partie avant.

Été coincé à cela depuis quelques heures maintenant, j'apprécierais vraiment toute aide!

2
Dark Knight 7 mars 2016 à 01:04

4 réponses

Meilleure réponse

Facile et rapide :)

var value = 'yourstring'.split('/')[4]
0
Dmitriy 6 mars 2016 à 22:16

Bien sûr, vous pouvez simplement diviser l'URL entière avec /, mais je trouve généralement plus sûr de diviser l'URL en parties connues, puis d'extraire des informations de celles-ci.

Voici une sorte de façon sournoise d'effectuer une analyse d'URL dans le navigateur

function parseUrl(url) {
  var elem = document.createElement('a');
  elem.href = url;
  return {
    protocol: elem.protocol,
    host:     elem.host,
    hostname: elem.hostname,
    port:     elem.port,
    pathname: elem.pathname,
    hash:     elem.hash
  };
}

Ensuite, vous pouvez l'utiliser comme ceci

var url = "https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/"
parseUrl(url).pathname.split('/')[2]; // "androiddev"
0
Thank you 6 mars 2016 à 22:19

Utilisez la fonction substr String:

 var s = "https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/";
 var ss = s.substr(25, 10);
 alert(ss);

Où le premier argument est à quelle position d'index commencer à extraire et le second est le nombre de caractères. extraire.

Violon: https://jsfiddle.net/h8afc3pt/

0
Scott Marcus 6 mars 2016 à 22:08
var str = "https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/"
var name = str.split('/')[4]
console.log(name);// androiddev
1
isvforall 6 mars 2016 à 22:09