Hur gör jag en funktion som plockar ut siffror i slutet av en sträng?
Strängen ser ut så här och kan innehålla olika antal siffror i slutet men de föregås alltid av ett underscore.
name_12
12 svar · 337 visningar · startad av Web-Tor
Hur gör jag en funktion som plockar ut siffror i slutet av en sträng?
Strängen ser ut så här och kan innehålla olika antal siffror i slutet men de föregås alltid av ett underscore.
name_12
Jag hade försökt typ så här (om det bara finns ett underscore i strängen såklart):
strFoo = 'name_12';
strBar = strFoo.split('_')[1];
Inte för att jag är säker på att det funkar, men ändå. ;)
Mvh
Om folk kan det, så kommer någon garanterat att göra det. Det är dock en smal sak att fixa det, men det blir en kodrad till. ;)
Mvh
Har du lust att dela med dig även av denna kodrad?
Web-Tor skrev:
Har du lust att dela med dig även av denna kodrad?
Om herrn så önskar. ;)
Detta borde fjungera:
strFoo = 'foo_bar_name_126';
arrFoo = strFoo.split('_');
strBar = arrFoo[arrFoo.length-1];
Mvh
Gulligt! :f
Eller:
strFoo = 'foo_bar_name_126';
strBar = strFoo.substring(strFoo.length, strFoo.lastIndexOf('_') + 1);
Mvh
om strängen alltid börjar med "name_", är det inte bättre att använda javascripts substringfunktion?
strFoo = 'name_126';
strFoo.substring(0,5);
Sitter inte vid en editor nu så jag kan inte validera att snutten ovan fungerar men något liknande bör det vara.
/M
Den börjar inte alltid med "name_". ;)
attans :)
Re: Plocka siffror ur sträng
Web-Tor skrev:
Hur gör jag en funktion som plockar ut siffror i slutet av en sträng?
Strängen ser ut så här och kan innehålla olika antal siffror i slutet men de föregås alltid av ett underscore.name_12
Funkar det med ett reguljärt uttryck?, typ:
alert( /(\d+)$/.exec('name_5454')[0] );
Det funkar säkert men jag kör på split.
Tack ändå. :)