私は次のような値を持つ文字列を持っています:"H798asdhka80:124htg"
この文字列 (および同様の構造の文字列) からコロン ":" の前のすべての文字を取得したいので、新しい文字列は次のようになります。H798asdhka80
これを行うコードはどのようになりますか?
ありがとう
私は次のような値を持つ文字列を持っています:"H798asdhka80:124htg"
この文字列 (および同様の構造の文字列) からコロン ":" の前のすべての文字を取得したいので、新しい文字列は次のようになります。H798asdhka80
これを行うコードはどのようになりますか?
ありがとう
使用する
var str="H798asdhka80:124htg".split(':')[0]
を使用しsplit(':')
て配列を取得します["H798asdhka80","124htg"]
。そして、その配列の最初の要素のみを使用します。
使用substr
:
var str = "H798asdhka80:124htg",
strpart = str.substr(0,str.indexOf(':'));
またslice
var str = "H798asdhka80:124htg",
strpart = str.slice(0,str.indexOf(':'));
またsplit
var strpart = "H798asdhka80:124htg".split(/:/)[0];
またmatch
var str = "H798asdhka80:124htg".match(/(^.+)?:/)[1];
またreplace
var str = "H798asdhka80:124htg".replace(/:.+$/,'');
または、より一般的なString.prototype
拡張機能を作成します
String.prototype.sliceUntil = function(str){
var pos = this.indexOf(str);
return this.slice(0, (pos>-1 ? pos : this.length));
}
var str = "H798asdhka80:124htg".sliceUntil(':124');
正規表現の回答で、文字列の先頭からコロンまでのすべてに一致します。
var str = "H798asdhka80:124htg";
var txt = str.match(/^[^:]+/);
"H798asdhka80:124htg".split(':')[0]
これには正規表現は必要ありません。これはあなたのために働くはずです:
str.split(':')[0];
とにかく、他の方法は、次のreplace
ように、正規表現を使用して文字列の不要な部分にすることです。
str.replace(/:.+$/, '');