javascriptにおける文字列の操作のまとめ
7813 ワード
一言も聞いたことがありませんか?プログラマの世界は、文字列を処理しないことが処理行列です.これはグループの中の先輩と私が言ったのです.明らかにこれは私が以前理解していたDOMとは違って、いくつかの面接問題の内容を見て、先輩の話がとても正しいと感じました.だから、まとめて、javascriptの文字列に対する操作をまとめました.
Stringタイプ
最初の文字列の種類は基本的なタイプですが、ここでは文字列の対象包装の種類を言います.引用の種類だけが属性と方法があるからです.実際には基本タイプを読み込むごとに、対応する基本パッケージタイプを作成します.データを操作するためにいくつかの方法を呼び出すことができます.1.chart()とcharCodeAt()の2つの方法は、1つのインデックスパラメータを受け入れ、charAt()はインデックスに対応する文字を返し、charCodeAt()は対応する文字の文字コードを返します.2.concat()は、1つ以上の文字列をつなぎ合わせて、スティッチングした新しい文字列を返します.eg:
Stringタイプ
最初の文字列の種類は基本的なタイプですが、ここでは文字列の対象包装の種類を言います.引用の種類だけが属性と方法があるからです.実際には基本タイプを読み込むごとに、対応する基本パッケージタイプを作成します.データを操作するためにいくつかの方法を呼び出すことができます.1.chart()とcharCodeAt()の2つの方法は、1つのインデックスパラメータを受け入れ、charAt()はインデックスに対応する文字を返し、charCodeAt()は対応する文字の文字コードを返します.2.concat()は、1つ以上の文字列をつなぎ合わせて、スティッチングした新しい文字列を返します.eg:
var str1 = '111';
var result = str1.concat('abcd','dsas');// 111abcddsas
3.slice()、substr()、substring()の3つの方法はいずれも文字列の切り取りです.いずれも一つまたは二つのパラメータを受け入れます.彼らの最初のパラメータは開始位置を表します.(1)slice()の2番目のパラメータは、切り取りが必要な位置の後ろの文字索引を指定します.2番目のパラメータがない場合は、文字列長を終了位置とします.負の値が入力されると、負の値は文字列の長さに加算されます.var str1 = "hello world"
alert(str1.slice(3));// :lo world
alert(str1.slice(3,7));//lo w
alert(str1.slice(-3));// :rld
alert(str1.slice(3,-7));// :l
(2)substring()の2番目のパラメータは、切り取りが必要な位置の後の文字索引を指定します.2番目のパラメータがない場合は、文字列長を終了位置とします.負の値が入ると、負の値はすべて0に変換されます.var str1 = "hello world"
alert(str1.substring(3));// :lo world
alert(str1.substring(3,7));//lo w
alert(str1.substring(-3));// 0 , :hello world
alert(str1.substring(3,-7))// :hel
(3)substr()の2番目のパラメータの場合に指定された切り取り長さは、2番目のパラメータがない場合は文字列長を終了位置とします.負の値が入ると、最初のパラメータに文字列の長さを加え、2番目のパラメータは0に変換されます.var str1 = "hello world"
alert(str1.substr(3));// :lo world
alert(str1.substr(3,7))// :lo worl
alert(str1.substr(-3))// //rld
alert(str1.substr(3,-7))// :""
4.indexOf()、lastIndexOf()の2つの方法は、2つのパラメータを受け入れます.最初のパラメータの場合は、位置を決定するサブ文字列、2番目のパラメータはオプションで、検索を開始する位置です.メソッドは、サブ文字列の位置を返します.見つからない場合は-1を返します.indexOf()は最初から検索しますが、lastIndexOf()は最後から前へ検索します.var str1 = "hello world";
alert(str1.indexOf("o"));//4
alert(str1.lastIndexOf("0"));//7
alert(str1.indexOf("a"))//-1
alert(str1.indexOf("o",6));//7
alert(str1.lastIndexOf("o",6));//4
5.trim()trim()は、文字列の両側のスペースを削除します.6.toLowerCase()、toUpperCase()の2つの方法は、文字列の大文字小文字を変換するために用いられる.直接例を見る:var str1 = "hello world"
var str2 = "HELLO WORLD"
alert(str1.toUpperCase());//HELLO WORLD
alert(str2.toLowerCase());//hello world
他にもtoLocareLowerCaseとtoLocareUpperCaseの方法があります.この2つの方法と似ています.7.match()match()方法は正則のexec()に類似しています.パラメータは正則式または文字列です.行列を返します.配列内容は呼び出しexec()方法と一致している. var text = "cat, bat, sat, fat";
var pattern = /.at/;
var matches = text.match(pattern);
alert(matches.index); //0
alert(matches[0]); //"cat"
alert(pattern.lastIndex); //0
8.search()search()方法は、match()方法のパラメータと一致して、最初のマッチ項目のインデックスを返します.一致していない場合は、-1を返します.常に先頭から後ろに検索します.var text = "cat, bat, sat, fat";
var pos = text.search(/at/);
alert(pos); //1
9.replace()replace()方法は2つのパラメータを受け入れ、最初のパラメータは正則オブジェクトまたは1つの文字列とすることができ、2番目のパラメータは1つの文字列または1つの関数とすることができる.最初のパラメータが文字列である場合は、文字列の中性子文字列を呼び出す文字列を第2のパラメータに置き換えて返します.そして最初だけを置き換えることができます.全体的に置換するには、正則を使用して全体を指定します.var text = "cat, bat, sat, fat";
var result = text.replace("at", "ond");
alert(result); //"cond, bat, sat, fat"
result = text.replace(/at/g, "ond");
alert(result); //"cond, bond, sond, fond"
10.split()この方法は、一つの区切り記号に基づいて一つの文字列を複数のサブ文字列に分割し、結果を一つの配列に入れる.方法は、結果の配列のサイズを指定するために、2番目のパラメータを受け入れることもできる.var colorText = "red,blue,green,yellow";
var colors1 = colorText.split(","); //["red", "blue", "green", "yellow"]
var colors2 = colorText.split(",", 2); //["red", "blue"]
var colors3 = colorText.split(/[^\,]+/); //["", ",", ",", ",", ""]
また、文字コードを文字列に変換するためのform CharCode()の方法もあります.alert(String.fromCharCode(104, 101, 108, 108, 111)); //"hello"
以上は部分文字列の方法です.「javascript高級プログラム設計」にまとめました.