[あすかぜ・ねっと]あすかぜ・ねっと自作ソフトCassava > サポート掲示板

Cassava Editor サポート掲示板

スレッド一覧に戻る返信

[115] mid関数について

まさきち [2008/07/11 14:41:07]

はじめましてm(__)m
つい先日Cassavaマクロの作成をし始めたのですが、mid関数
について教えて下さい。

渡された文字列が数値かどうかを調べる関数を作成しました
(以下参照)。

function fcIsNumber(paramValue){
strValue=paramValue+"";

//引数チェック
if(len(strValue)<1){
return -1;
}

//文字数
intLenMax=lenB(strValue);

//数値チェック
for(intLen=1;intLen<=intLenMax;intLen++){
strChar=mid(strValue,intLen,1);
intChkFlg=0;

if(strChar=="0"){
intChkFlg=1;
}else if(strChar=="1"){
intChkFlg=1;
}else if(strChar=="2"){
intChkFlg=1;
}else if(strChar=="3"){
intChkFlg=1;
}else if(strChar=="4"){
intChkFlg=1;
}else if(strChar=="5"){
intChkFlg=1;
}else if(strChar=="6"){
intChkFlg=1;
}else if(strChar=="7"){
intChkFlg=1;
}else if(strChar=="8"){
intChkFlg=1;
}else if(strChar=="9"){
intChkFlg=1;
}

if(intChkFlg!=1){
return -1;
}
}

return 0;
.

この関数に対して
2008
等の値を渡すとエラーが発生しないのですが、
abcdefg
等の数字以外を渡すと、「引数の数が足りません」というエ
ラーが発生します。

対処方法のご教授をよろしくお願いしますm(__)m

P.S. 同じ内容の質問があった場合は申し訳ありません。

Re: [115] mid関数について

まさきち [2008/07/11 15:30:15]

自己解決(?)しました。

どうも、関数の戻値にマイナス(return -1;)を指定するとエラーが発生す
るようでした。

お騒がせしましたm(__)m

Re: [115] mid関数について

あすかぜ [2008/07/12 16:06:21]

ご指摘ありがとうございます。
return直後の「-」が、減算記号として扱われているようですね。
直せるかどうか調べてみます。
とりあえずは return (-1); として回避してください。

Re: [115] mid関数について

あすかぜ [2008/07/19 23:34:51]

Ver.1.5.7 で、return 直後に「-」を書けるように修正しました。
http://www.asukaze.net/soft/cassava/bbs/index.cgi?t=122

スレッド一覧に戻る返信