2014年5月11日日曜日

Lesson13: 文字列操作(Stringクラス)


このサイトは移転しました。1秒後に自動でジャンプします。
移動しない場合は、ここをクリックしてください。



JavaScriptで文字列の長さを求めたり、文字列内の特定文字列を置き換えたり、文字列操作を行うための方法について例を上げて説明します。


■文字列の定義

文字列の宣言は、以下のいずれも同じです。JavaScriptでは、ダブルクォート(")で括るか、シングルクォート(')で括るかで違いはありません。(言語によって、違いがあります)
var str = "文字列";
var str = '文字列';
var str = new String("文字列");
var str = new String('文字列');


■lengthプロパティ: 文字列の長さ

文字列の長さは、lengthプロパティで取得でます。
var str = "文字列";
var res = str.length;
変数resに3が格納されます。


■indexOf()メソッド: 指定した文字列が最初に出現する位置を調べる

var str = "あいうえお";
var res = str.indexOf("うえ");
変数resに2が格納されます。(開始位置は0から数えます)


■lastIndexOf()メソッド: 指定した文字列が最後に出現する位置を調べる

var str = "ABCABCABC";
var res = str.lastIndexOf("AB");
変数resに6が格納されます。


■substr()メソッド: 指定した範囲の文字列を切り出す

var str = "ABCDEFG";
var res = str.substr(1, 3);
変数resに"BCD"が格納されます。


■replace()メソッド: 文字列を置き換える

文字列を置き換える方法として、大きく2つがあります。
○replace(文字列, 置換文字列)  単純な置換
var str = "abcdefABCDEFABCDEF";
var res = str.replace("ABC", "XYZ");
変数resには "abcdefXYZDEFABCDEF" が格納されます。
最初に見つかった "ABC" のみが "XYZ" に置換されます。
○replace(正規表現パターン, 置換文字列) 正規表現を用いた置換
特定の文字列ではなく、あるパターンに一致する文字を置換したいという場合に、そのパターンを表現するために正規表現(Regular Expression)というものがあります。
正規表現は、JavaScriptに限らず多くのプログラム言語や、文章を編集するためのテキストエディタなど、コンピュータの様々なところで使われるたいへん便利なものです。
詳細は、後日RegExpクラスを説明するときに教えたいと思います。

正規表現を用いた置換の例を挙げます。

var str = "FirstName LastName";
var res = str.replace(/(\w+)\s(\w+)/, "$2 $1");
変数resには "LastName FirstName" が格納されます。
正規表現パターンは引用符(" または')で括らず、/と/の間に記載します。

0 件のコメント:

コメントを投稿