スクリプト/はじめてのRmakeスクリプト / 第02回 変数と文字列をマスターしよう(履歴ID:267)

最終投稿者:Cdv30200 aoi icon mini aoihikawa 更新:2012/06/19 09:06:04
はじめてのRmakeスクリプト

 第02回 変数と文字列をマスターしよう


こんにちは 簸川 葵(ひかわ あおい)と申します

こんにちは 剣 芽優(つるぎ めゆ)です

この連載ではスクリプトの基礎を、じっくりとお話していきます

よろしくお願いしまーす



02-01 変数と文字列


前回では変数と数値についてお話しました

今回は文字列についてお話しましょう

「ハローRmakeわーるど」っていう、あれのことかな・・・

有名な例文のひとつですね

それでは、変数に文字列を入れてみましょう

#「s」という名前の変数に、文字列「ハローRmakeわーるど」を入れる
s = "ハローRmakeわーるど"

#「t」という名前の変数に、変数「s」の中身を入れる
t = s

#変数「t」の中身を表示する
speak(t)

基本的には数値を入れたときと同じです

「=」を使って、右から左に入れるのね

違う点は、変数名と文字列が区別できるように

文字列は「"」(ダブルコーテーション)で囲みます

speak関数は変数の中身の表示ね

そのとおり 数値の場合と同じですね

なお、文字列の中には特殊な記号があり、

「\n」と書くと改行、「%Wait%」と書くとクリックするまで一時停止の動作になります

長文の会話に便利そうね



02-02 文字列の連結


文字列同士を「+」でつなぐと、連結することができます

数値の場合は足し算だったような

そうですね 変数の中身が数値か文字列かによって、動作が変わるわけです

#「s」という名前の変数に、文字列「ハロー」を入れる
s = "ハロー"

#「t」という名前の変数に、変数「s」の中身と文字列「Rmake」を連結させて入れる
t = s + "Rmake"

#「t」という名前の変数を、変数「s」の中身と文字列「わーるど」を連結させて上書きする
t = t + "わーるど"

#変数「t」の中身を表示する
speak(t)

変数「s」に文字列「ハロー」が入って、

変数「t」に「ハローRmake」が入って・・・

変数「t」に「ハローRmake」と「わーるど」が連結した

「ハローRmakeわーるど」が入ります

なお、speak関数では直接文字列を渡すこともできます

#文字列「ハローRmakeわーるど」を表示する
speak("ハローRmakeわーるど")

#文字列「ハロー」「Rmake」「わーるど」を連結して表示する
speak("ハロー", "Rmake", "わーるど")

こっちの方が分かりやすい

必ず同じメッセージが表示される場合は、こちらの方が見やすいですね

状況によってメッセージを変えたい場合は変数を利用した方が便利です

また、「,」を使用した文字列連結はspeak関数による動作なので

それ以外での使用には注意が必要です



02-03 文字列と数値


文字列と数値で「+」の動作が変わると、思ったとおりに動作しないかも・・・

そういった場合はtoString関数toNumber関数を使います

新しい関数ですね

実際にスクリプトを見てみましょう

#「x」という名前の変数に、数値「10」を入れる
x = 10

#「s」という名前の変数に、変数「x」をtoString関数で文字列にして入れる
s = toString(x)

#「s」という名前の変数に、変数「s」と文字列「ポイント」を連結して上書きする
s = s + "ポイント"

toStringの前には、変数に入れる「=」があるのね

toString関数やtoNumber関数は、speak関数と違い『戻り値』があるからです

『戻り値』・・・?

動作のあと、実行した結果の値を返す関数があります

toString関数では数値を渡すと文字列にして返しています

この返ってきた値を『戻り値』といいます

つまり、toString関数の『戻り値』を変数「s」に入れているわけね

そのとおり ここで変数「x」の中身の数値は、文字列として変数「s」に入ります

文字列同士になるから、連結の動作になり「10ポイント」となるのね

ちなみにtoNumber関数では文字列を渡すと数値にして『戻り値』に返します



02-04 第02回 まとめ問題集


それでは、今回のまとめ問題です

よーっし がんばるよ

なお、回答は記載しておりません

スクリプトをコピーして、実際に動作させることでチェックしてください


問題01
 次のスクリプトに実行結果が「こんにちは」と表示されるよう、1行を追加してください

#ここに追加する

speak(s)


問題02
 次のスクリプトに変数「x」を使用して実行結果が「70点」と表示されるよう、2行を追加してください
x = 70

#ここに追加する

speak(s)


問題03
 次のスクリプトに変数「s」を使用して実行結果が「50」と表示されるよう、2行を追加してください
s = "25"

#ここに追加する

speak(x)

できた! 上手く動くと楽しいね

なお、理解したかどうかの確認なので、コメントに回答を書かないでください




 <連載一覧>

第01回 変数と数値をマスターしよう

第02回 変数と文字列をマスターしよう

第03回 変数とフラグをマスターしよう

第04回 配列変数をマスターしよう

第05回 通常変数をマスターしよう

第06回 数値の応用をマスターしよう

第07回 時間の動作をマスターしよう

第08回 ユーザ定義関数をマスターしよう

第09回 スクリプト用語のまとめ
メニュー
目次