if StrLen = 0 then begin MessageBox('文字が選択されていません。', 'エラー',0); Exit; end;
p := Pos(SPC, tmpStr);
while (p <> 0) do begin p := Pos(SPC, tmpStr); //空白の位置を調べる if p = 0 then Break; WordC := WordC + 1; tmpStr := Trim(Delete(tmpStr, 1, p)); //先頭から空白まで削除 end;
//ダッシュ数計算 tmpStr := Str; //検査対象文字列を復元 d := Pos(DSH, tmpStr);
while (d <> 0) do begin d := Pos(DSH, tmpStr); //ダッシュの位置を調べる if d = 0 then Break; DC := DC + 1; tmpStr := Trim(Delete(tmpStr, 1, d+1)); //先頭からダッシュまで削除 end;
//語数集計 WordC := WordC+1+DC; MessageBox(IntToStr(WordC) + '語です。', '計算結果',0); end
英単語数の計算マクロと思いこれはありがたいということで早速利用させていただいたのですが、質問があります。 以下の英文の単語数をEWCount.ppaで計算しますと10語となります。しかし、実際は12語なのです。原因はおわかりでしょうか? うまく計算できますと大変便利なマクロなのですが。うまい対処方法はないでしょうか? Hello, everyone. My name is Tom Brown. I'm staying with Ken's family.