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

この文字列「9862」の最初の4つの数字を取得したいと思います。この文字列の最初の数列を取得するにはどうすればよいですか。そしてそれをanothoer変数に保存しますか?

Javascriptはこの変数を認識していないようです。どうしてか分かりません。私が行った場合:

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

'mystring'変数に保存しようとしているテキストに何か問題がありますか?

4

6 に答える 6

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

mystring = mystring.substring(0, 4);

alert(mystring.trim());
于 2012-06-19T08:17:46.123 に答える
3

次のいずれかを実行できます。

mystring=mystring.substring(from,to);

また

mystring=mystring.substr(start,length);

開始が0の場合(あなたの場合のように)、2つの方法は同じになります。

出典:

http://www.w3schools.com/jsref/jsref_substr.asp
http://www.w3schools.com/jsref/jsref_substring.asp

于 2012-06-19T08:26:40.193 に答える
3
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

上記の関数はすべての整数を配列に抽出するため、最初の整数を抽出できます。

于 2014-01-30T23:51:14.057 に答える
2

問題は任意の文字列の最初の4桁を見つけることなので、正規表現の解決策も可能です:/\d{4}/または/[0-9]/正規表現のデモを参照してください。

正規表現ソリューションは、さまざまなコンテキストで4桁を抽出できるため、より柔軟性があります。

/^\d{4}/ // To match any first 4 digits at the start of a string
/\d{4}/ // To match any first 4 digits anywhere inside a string
/word.*?(\d{4})/ // To match and capture any first 4 digits after a specific `word`

以下のデモを参照してください。

var mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862";
console.log(mystring.match(/^\d{4}/)[0]); // The first 4 digits at the start of a string
console.log("Year: 2018".match(/\d{4}/)[0]); // The first 4 digits anywhere in a string
console.log("Year: 2012".match(/Year.*(\d{4})/)[1]); // The first 4 digits after Year

于 2018-07-13T10:34:16.500 に答える
0

これを試して:

mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862";
var str=mystring.substr(0,4);
alert(str);
于 2012-06-19T08:19:37.530 に答える
0

関数を使用して最初の4文字を取得できます

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

mystring = mystring.substr(0,4);

また

mystring = mystring.substring(0,4);

両方とも正常に動作します...試してみてください

于 2012-06-19T08:24:45.873 に答える