値は次のようなものです: 12 23 345 3454 21
.
これから数値を取得して配列に格納する必要があるため、配列は のようになります
values = new Array(12,23,345,3454,21);
。
私の問題は、空白を削除できることですが、1223345345421
.
値は次のようなものです: 12 23 345 3454 21
.
これから数値を取得して配列に格納する必要があるため、配列は のようになります
values = new Array(12,23,345,3454,21);
。
私の問題は、空白を削除できることですが、1223345345421
.
split(" ")
空白に沿って文字列を分割するために使用できます。
より徹底するには、先頭と末尾のスペースを切り取り、複数のスペース文字に沿って分割する必要があります。
> var numbers_in_string = " 12 23 345 3454 21 ";
> var numbers_in_array = numbers_in_string.trim().split(/\s+/);
> console.log(numbers_in_arrays)
["12", "23", "345", "3454", "21"]
編集
@Sangdol が述べたように、trim() は IE9 では機能しない可能性があるため、これらのソリューションのいずれかをインクルードして、trim() 機能を IE9 に追加できます。trim()
または、に置き換えるだけreplace(/^\s+|\s+$/g, '')
です。どちらのソリューションも、ブラウザー間の互換性を回避するための回避策として機能します。
.replace(/^\s+|\s+$/g, '').split(/\s+/)
同じパターンの場合は、次を使用できますsplit()
。
var arr = '12 23 345 3454 21'.split(' ');
console.log(arr); // [12, 23, 345, 3454, 21]
ドキュメント:
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/split
split の代わりに、match を使用できます。
' 12 23 345 3454 21 '.match(/\d+/g); //12,23,345,3454,21
これは、抽出しようとしているパターンに固有のものであり、適合する場合と適合しない場合があることに注意してください。一致したパターンのみを取得するため、介在する不一致 (空白を含む) は返されません。