検索
連載

JavaScriptで文字列を扱う「String」の基本JavaScript標準ライブラリの使い方超入門(2)(2/4 ページ)

JavaScriptの標準仕様としてビルトインされている主なオブジェクトの使い方を紹介する連載。今回は、文字列を扱うStringについて。長さ取得のlength、位置取得のindexOf、切り出しのsubstring、substr、slice、分割のsplitなどの基本を解説。

Share
Tweet
LINE
Hatena

lengthプロパティで文字列の長さを求める

theme

lengthプロパティで文字列の長さを調べて、これを表示する。


Navigator

lengthプロパティは、文字数を表わす数値型の値を返します」


英字と日本語の文字の長さをそれぞれ求める

lengthプロパティは日本語のような全角文字も1文字として数える。
Navigator

「JavaScriptではUnicodeを基本としますので、日本語のような全角文字も1文字として数えます。文字数を調べるときの書き方は、対象の文字列とlenghtをメンバー演算子『.』で区切って記述します。オブジェクトを操作するときの『何を』『どうする』の書き方です」


lengthプロパティを使う
Driver

「『変数名.プロパティ名』という書き方ですね。このように書けば、変数に格納された文字列が、Stringオブジェクトとして扱われるようになるんですよね。では、lengthプロパティで文字列の長さを調べてみるコードを書いてみます」


文字列の長さを表示する(String_length.html)
実行結果

特定の文字列の位置を調べる

theme

文字列の中から、特定の文字を指定し、その文字の位置を画面に表示する。ただし、文字の位置を示すインデックス値をそのまま表示すること。


Navigator

「今度は、Stringオブジェクトのメソッドを使ってみましょう。メソッドもプロパティと同様に、『変数名.メソッド名()』の書き方で利用することができます。メソッド名のあとの()は、メソッドに渡す引数を書く部分です」


Driver

「引数を書かなくてもいいメソッドもありますよね」


Navigator

「その場合は、()の中は空のままでいいです」


メソッドを呼び出す

文字位置を示すインデックス値を取得する

Navigator

indexOf()は、文字列の先頭から特定の文字列を検索して、この文字列の先頭位置を示すインデックスを返すメソッドです。インデックスとは、文字の位置を示す0から始まる通し番号のことです。'こんにちは'の『ん』のインデックスは『1』になります。なお、指定した文字列がなかった場合は-1が返されます」


Driver

「インデックス値は『0』から始まることに気を付けなきゃいけませんね」


Navigator

「一方、『lastIndexOf()』というメソッドは、『文字列の末尾』から特定の文字列を検索して、この文字列の先頭位置を示すインデックスを返します。文字列の中に指定した文字列が1つしかない場合は、indexOf()を使った場合と同じ結果になるのですね」


Driver

「じゃ、indexOf()を使った2パターンのコードと、lastIndexOf()を使ったコードを書いてみます」


指定した文字列の位置を調べる(indexOf.html)
実行結果
Driver

「(1)はstrに格納されている文字列の先頭の位置から検索を開始し、最初に出現する『example』の位置(インデックス)を取得しています。(2)では文字列の8文字目の位置から検索を開始し、最初に出現する『example』の位置を取得しています。最後の(3)は、文字列の先頭の末尾から検索を開始し、最初に出現する『example』の位置を取得するようにしました」


Hint 文字列が見付かったかどうかを調べる

 if文の条件式にindexOf( )やlastindexOf( )を含めることで、特定の文字列が存在するかどうかを調べることができます。

見付かったかどうかを調べる
見付からなかったかどうかを調べる

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る