2012-06-19 13 views
7
mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862" 

Chcę uzyskać pierwsze 4 cyfry w tym ciągu "9862". Jak uzyskać pierwszą sekwencję liczb w tym ciągu. Przechowuj to w zmiennej aothoer?JavaScript: Jak zdobyć pierwsze 4 cyfry w ciągu znaków?

Javascript nie rozpoznaje tej zmiennej. Nie wiem dlaczego. jeśli ja:

alert(mystring); //I don't get an alert pop up nor does it show any errors. 

Czy może coś być nie tak z tekstu Próbuję zapisać w zmiennej „mystring”?

+0

użyj wyrażenia regularnego – Quincy

+0

tak, otrzymując liczby z regex od początku mystring.match (/^[0-9] + /), czy jesteś pewny, że pozycja numeru się nie zmienia? –

Odpowiedz

10
mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862"; 

mystring = mystring.substring(0, 4); 

alert(mystring.trim()); 
+0

Dzięki, ale jeśli są tylko 3 cyfry. Mówię, że 9862 jest powszechne, ale sporadycznie dostanę na przykład "956" trzycyfrową liczbę, podciąg zajmie miejsce pozostałe po numerze. Jak mogę uzyskać tylko numer? Podobnie jak mystring.subinteger, aby uzyskać tylko liczby i nie zawierać spacji po metodzie podłańcuchowej? –

+0

'mystring = mystring.trim()' usunie przestrzeń wokół twojego ciągu –

+0

zobacz moją zredagowaną odpowiedź –

0

Spróbuj tego:

mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862"; 
var str=mystring.substr(0,4); 
alert(str); 
0

można użyć, aby funkcjonować, aby uzyskać pierwsze 4 Char

mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862" 

mystring = mystring.substr(0,4); 

lub

mystring = mystring.substring(0,4); 

zarówno będzie działać dobrze ... spróbuj to

1
var extractInts = function(str) { 
    r = []; 
    for (var i = 1, l = str.length; i <= l; ++i) { 
     if (!isNaN(parseInt(str.substring(i-1, i),0))) { 
      str = str.substring(i-1); 
      r.push(parseInt(str, 0)); 
      str = str.substring(parseInt(str,0).toString().length); 
      i = 1; 
     } 
    } 
    return r; 
}; 

var str = "Hi, here is an int 1, and another 3, and finally 37"; 
var i_array = extractInts(str); 
console.log("extractInts: " + i_array[0]); //Prints 1 

Powyższy funkcja wyodrębnić każdą liczbę całkowitą w tablicy, a tym samym można wyodrębnić tylko pierwszy.

Powiązane problemy