なでしこでは、基本的にある特定の助詞を見つけたところで文を区切ります。例えば「リンゴの値段」とあれば、「リンゴの」と「値段」の2つの単語に切り分けます。
なでしこに『トークン分割』という命令があるのですが、これを使うと、どのように単語を切り分けているのかを調べることができます。
『「おはよう」と言って家を出た』をトークン分割して表示
これを実行すると、以下のようになります。
「おはよう」と
言って
家を
出
単語を区切る助詞は27個あります。
→助詞の種類最後の「出る」が「出」と省略されるのは、「出よう」と書いても、「出ろ」と書いても同じように実行されるようになっているからで、助詞以外の単語は、送り仮名が省略されます。
そのため、動詞以外の語句「赤い」も「赤」として判別されます。
コメントとはプログラム中で意味の無い注釈文のことです。
コメント記号 | 意味 | 例 |
# | 一行コメント | #注釈文 |
// | 一行コメント | //注釈文 |
/* ... */ | 範囲つきコメント | /* 注釈文 */ |
文字列の表現は、カギ括弧で括る方法「...」や『...』と、"..."や`...`で括る方法があります。当たり前ですが、文字列の中は、助詞で区切られません!
なでしこでは、構文をブロックの単位で処理します。ブロックはインデント(字下げ)して区別します。
例えば、「もし〜ならば〜違えば〜」という条件分岐構文では、以下のように、条件が真のときと偽のときに実行される部分をインデントして書きます。
年齢は16
もし、年齢が20未満ならば
#真のときのブロック
「未成年です」と表示
違えば
#偽のときのブロック
「成人です」と表示
インデントに使える文字は、スペース「 」か全角スペース「 」かタブです。スペースを1と数えると、全角スペースは2、タブは最大4と数えます。
正確なブロックの範囲に関してですが、以下のように構文と同じ行にある文とその続きのインデントされた部分を合わせて1つのブロックとして認識します。
2回、xxxx
xxxxx
そのため以下のプログラムを実行すると、「あ」と「い」が2回表示されます。
2回、「あ」と表示。
「い」と表示。
ただし、次の場合は次の行にインデントがないので「あ」だけが2回表示されます。
2回、「あ」と表示
「い」と表示。
基本的に命令は一行に1つ書きますが、複数の命令をつなげて書くこともできます。
もし、一行が長くなりすぎたときは、行末に、読点「、」かカンマ「,」を打てば前の行の続きとみなします。
また、行末に、演算子(+−×÷&など)を書いた場合も次の行を前の行の続きとみなします。