「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板
[一覧へ] > (@546) [低] [解決]
@546■ (#1734) 変数名が「半角英数」のみと、「半角英数」+「全角」が同じと見なされる場合がある。 - catch (2010-08-24 00:25) /低 未処理
【症状】「半角英数」で記述された変数名(例:test)と、「半角英数」+「全角」で記述された変数名(testあ)が、同じと見なされる場合がある。
【再現方法】サンプルソース

#NG:半角英数+全角を定義。半角英数だけを追加表示
testあ=「abcdef」

testあを表示する。 # => abcdef
testを表示する # => abcdef
「----」を表示

#NG:半角英数を定義。半角英数+全角を追加表示。
test1=「67890」

test1を表示する。 # => 67890
test1あを表示する。 # => 67890
「----」を表示

#OK:全角+半角英数を定義。全角を追加表示
テスト1=「wxyz」

テスト1を表示する。 # => wxyz
テストを表示する。 # => テスト
「----」を表示

#OK:全角を定義。全角+半角英数を追加表示。
テスト=「12345」

テストを表示する # => 12345
テストAを表示する # => テストA



【要望】どのような解決が望ましいか?
変数名を、「半角英数」+「全角」にすることがある(例:HTML型)ので、これをユニークな変数名と認識してくれるとウレシイ。

あるいは、マニュアルに制限として記載シテ欲しい。
http://nadesi.com/doc/reference/syntax/1-1-hensu.htm


【バージョン】確認したバージョン
バージョン:1.5322
最終更新日:2009/09/12
OS   :Windows XP [5.1(2600:2)]

【その他】

(#1736) 平仮名除去ルール - U D (2010-08-24 21:48) /低 未処理
変数や命令の名前では、先頭以外の平仮名は無視されます。
これは、命令の語尾などに柔軟性を持たせるための文法仕様です。
(例えば、「言う」「言え」や、「置換」「置き換える」など)

Cf. 変数名の規則 - ひらがなの扱いについて
http://nadesi.com/wiki/index.php?U%20D%2F%CA%B8%CB%A1%A1%A6%BB%C5%CD%CD%2F%CA%D1%BF%F4%CC%BE%A4%CE%B5%AC%C2%A7#a704faca

確かにマニュアルには記載すべきだと思います(どこかに書いてあった気もするが…うーむ??)

(#1737) RE:平仮名除去ルール - catch (2010-08-25 00:20) /低 未処理
UDさん、
コメントありがとうございます。

私のサンプルコードの挙動が、ご指摘のとおり、
ひらがなの扱いのせいだということが
よく分かりました。

(続く)

(#1738) ありがとうございました。 - catch (2010-08-25 00:32) /低 解決
ひらがな以外の例もあったのですが、
うまく再現しません。
いったん解決とします。


(#1734)へ返信する:

👆お手数ですが、いたずら防止のために、「真夏」の読み方を記入してください。

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能