2012-10-24 3 views
-6

Comment puis-je le sous une chaîne selon le caractère 3th par exemple: J'ai la chaîne « aaa: // Google/gmail » et je veux obtenir une nouvelle chaîne jusqu'à ce que le 3th «/» , nouvelle chaîne = "aaa: // Google /"chaîne Sub en javascript

+4

Je suis sûr que cela peut être facilement recherché. Je commencerais en tapant 'Sub string in javascript' –

+0

Vous voudrez peut-être essayer quelques expressions régulières – Amberlamps

+0

http://stackoverflow.com/questions/how-to-ask: 'Avez-vous complètement recherché une réponse avant de poser votre question ? ' –

Répondre

2

Quelque chose comme cela devrait faire

var str = "aaa://Google/gmail", 
    matches = str.split('/'); 
str = matches.slice(0, 3).join('/') + (matches.length > 3 ? '/' : '') 

Si vous ne se soucient pas de la barre oblique, il est plus simple:

"aaa://Google/gmail".split('/').slice(0,3).join('/') 
0

Vous pouvez également utiliser match:

var s = 'http://www.google.com/whatever'; 
var match = s.match(/^[^\/]*\/[^\/]*\/[^\/]*\//); 

alert(match && match[0]); // http://www.google.com/ 
1

Je voudrais essayer une regex:

var s = "aaa://Google/gmail"; 
var regex = /.*?\/.*?\/.*?\// // or more sophisticated: /(?:.*?\/){3}/ 
s.match(regex); 

plus cela ressemble à vous essayez d'obtenir document.location.host (et peut-être document.location.protocol)?