ストリングオブジェクトは文字列のオブジェクトです。
ストリングオブジェクトは以下の時に生成されます。
length | 文字列の長さ |
---|
"tokiwa".length// lengthは6
"shio masayuki".length// lengthは11
"".length// 空文字列のlengthは0
var hello = "Hello, World!";// 変数helloに文字列を代入
hello.length// lengthは13
charAt() | 指定された位置の文字 |
---|---|
charCodeAt() | 指定された位置の文字のAsciiコード |
concat() | 文字列の連結(+演算子と同じ) |
fromCharCode() | Asciiコードを文字に変換 |
indexOf() | 文字列が最初に見つかった位置 |
lastIndexOf() | 文字列が最後に見つかった位置 |
slice() | 指定した位置の文字列の切り出し |
substr() | 文字列の一部分を抜きだす(2つの位置) |
substring() | 文字列の一部分を抜き出す |
toLowerCase() | アルファベットの小文字化 |
toUpperCase() | アルファベットの大文字化 |
split() | 文字列を配列に変換 |
文字列中の何文字目かを指定して文字を取り出します。
文字列.charAt(インデックス)
インデックスは何文字目かを表す数値です。0から始まるので注意してください。
"tokiwa".charAt(2)// 値は"k"
var name="shio masayuki"; name.charAt(name.length - 1);// 値は"i"。最後の文字を取り出す式
文字列中に指定した文字列が含まれているか調べます。
文字列.indexOf(探す文字列, 検索開始インデックス)
検索開始インデックスを省略すると文字列の最初から検索します。
文字列を検索して見つかった場合には、見つかった文字列の先頭の文字のインデックスを返します。見つからなかった場合には-1の値を返します。
"tokiwa".indexOf("k")// 値は2
"tokiwa".indexOf("K")// 値は-1。大文字のKは無い。
"shio masayuki".indexOf("a",7)// 値は8
開始位置と終了位置をインデックスで指定します。終了インデックスは抜き出したい部分の最後の文字の次の文字のインデックスを指定します。終了インデックスが省略された場合には、文字列の長さ(つまり最後の文字まで)が指定されたことになります。
文字列.substring(開始インデックス, 終了インデックス)
"tokiwa".substring(2,4)// 値は"ki"
"tokiwa".substring(0,3)// 値は"tok"
"shio masayuki".substring(5)// 値は"masayuki"
開始位置と抜き出す文字列の長さを指定します。長さが省略された場合には、開始インデックスから最後の文字までが抜き出されます。
文字列.substr(開始インデックス, 長さ)
"tokiwa".substr(2,3)// 値は"kiw"
"tokiwa".substr(0,3)// 値は"tok"
"shio masayuki".substr(5)// 値は"masayuki"
指定した区切り文字によって文字列を複数に分割し、配列にします。
文字列.split(区切り文字)
var names = "shio masayuki".split(" ");// 半角空白で分割し配列namesに代入
trace(names[0]);// shioと表示
trace(names[1]);// masayukiと表示
Asciiコードを指定して文字に変換します。
String.fromCharCode(Asciiコード)
(注意)
任意の文字列の初めから最初に現れる半角空白文字の前までを抜き出すプログラムを作成せよ。
(ヒント) indexOf()関数とsubstr()関数を組み合わせる。
(別解) split()関数を用いる方法もある。
Programming Laboratory (Shio seminar)