日本語プログラミング言語「なでしこ」 > 戻る

文字列

 なでしこの文字列は展開ありと展開なしの2種類があり、展開ありの文字列では文字列の中に変数を埋め込むことができます。 また配列変数としてアクセスすることにより、文字列の特定の行を簡単に抜き出すことができます。
■文字列の指定
■展開について
■改行などの特殊記号は、以下のように表す 
■連続した特殊記号
■アスキーコードの埋め込みについて
■文字列中で「」や{}を表示する方法
■配列としてアクセス
■文字列の接続

文字列の指定

 文字列を表すには、以下の4つの記号が使えます。

「あいうえおかきくけこ」#展開あり
『あいうえおかきくけこ』#展開なし
"あいうえおかきくけこ" #展開あり
`あいうえおかきくけこ` #展開なし

展開について

 文字列中で、「{変数}」のように、{}の中に式を書くと、{}の中が評価され展開されます。

名前は「くじら」
「私は、{名前}です。」と言う。
# ↑「私は、くじらです。」という結果を返す

「さいころの目は...{1+6の乱数}です。」と言う。

※ひまわり1では、『¥』の記号をシーケンスとして展開していましたが、パスの区切りなど面倒なことが多かったので、展開できるのは、{}だけとしました。

改行などの特殊記号は、以下のように表す 

記号 意味 
{改行} 改行 
{タブ} タブ 
{〜}  改行 
{>}  タブ 
{[}  「
{]} 」 
{カッコ}  「
{カッコ閉じ} 」 
{波カッコ}
{波カッコ閉じ}
{二重カッコ}
{二重カッコ閉じ}
{¥n} 改行 
{¥t} タブ 
{¥s} スペース 
{¥0} ヌル文字 = chr(0) 
{¥(数値)  (数値)  (数値) ...} アスキーコードの直接埋め込み
{¥(文字)} (文字) 文字の表示

連続した特殊記号

特殊記号が連続する場合は、カンマやスペースで区切って、{...}と波カッコの中に特殊記号を複数記述することにより、連続した特殊記号を記述できます。

「aa{\13,10}aa」と表示。# aa {改行} aa
「aa{>>〜}aa」と表示。# aa {タブ}{タブ}{改行} aa

アスキーコードの埋め込みについて

 「あ{改行}{タブ}あ」は、「あ{\13,10,9}あ」や、「あ{\n\t}あ」や、「あ{〜>}あ」と書いても同じ意味です。 

 また、アスキーコードを16進表記したい場合は、「あ{\$D,$A}あ」と、$をつけます。 

 それから、漢字コードを直接指定することもできます。先ほどのコードも「あ{\$0D0A}あ」と書くこともできますが、MaxInt(2147483647) を超える数値を指定するとオーバーフローのエラーが起き失敗します。 

文字列中で「」や{}を表示する方法

 その場合は、以下のように{カッコ}、{カッコ閉じ}と書くか、{[}、{]}と書きます。

「子曰はく{カッコ}学びて時に之を習ふ…{カッコ閉じ}」と表示。
「子曰はく{[}学びて時に之を習ふ…{]}」と表示。

 また、波カッコ{...}を表示したい時も、{波カッコ}、{波カッコ閉じ}と書きます。

「{波カッコ}abcd{波カッコ閉じ}」と表示。# 表示結果→{abcd}

ほかに、波カッコは、{¥(文字)}の機能を使って以下のように書くこともできます。

「{\{}abcd{\}}」と表示。# 表示結果→{abcd}

配列としてアクセス

 文字列を配列としてアクセスすることにより、文字列の任意の行を抜き出すことができます。

あは「あああああ
いいいいい
ううううう」

あ[2]を言う。 「ううううう」が表示される

 配列は0からはじまりますので、上のプログラムで、あ[2]と書くと文字列の3行目を取り出します。

文字列の接続

 「&」を間に書くことよって、文字列を接続することができます。

「文字を」「結合する」と表示する。


→トップへ →目次へ