アプリ版:「スタンプのみでお礼する」機能のリリースについて

AppleScriptで
テキスト値ないの文字数をカウントするにはどうすればいいのでしょうか。

A 回答 (7件)

length ofですか?


こんな感じ:

% cat a.osa
put "This is applescript" into str
do shell script "echo 'length of [" & str & "] is '" & length of str
% osascript a.osa
length of [This is applescript] is 19

――PantherのTerminalで試してます。

この回答への補足

確かにUNIXコマンドでできるのですが、ClassicのAppleScriptではサポートされていないのでちょっと問題です。

補足日時:2004/03/14 11:39
    • good
    • 0

計算とは数値演算(+,-,*,/)が成立しているという事でしょうか?


この場合は「整数では無い」可能性?(しかし「"1"」が変換できないとなるのはおかしい。)

計算結果にもう一度「1をかけてみる」ことで、数値である事を認識させる。というのをHyperTalkでは、たまに使いますが。

もちろん、バグである可能性も考えられます。
    • good
    • 0
この回答へのお礼

すみません、本当は1出はなかったのですが、小数点を見落としていました。どうもお騒がせ致しました。

お礼日時:2004/03/15 21:02

補足です。



OS9で、あるアプリのAppleScript対応について知りたければ、そのアプリ本体のアイコンを「スクリプト編集プログラム」に放り込めば(ドラッグ&ドロップすれば)用語説明が表示されます。
 つまりAppleScriptを使用して、そのアプリをどう操作出来るか分かります。
 旧MacOSのSimpleTextで試したところ「スクリプティングに対応していません」とダイアログが出ました。SimpleTextはAppleScriptに対応していなかったのです。
 urineさんの御使用のアプリの用語説明を見て下さい。
選択範囲も、文字数を得ることもサポートしてないかも知れませんよ。
    • good
    • 0
この回答へのお礼

AppleScript Studioまでほとんどのことは理解しているので、その辺の極々初歩的なことはもちろん大丈夫です。ありがとうございます。

お礼日時:2004/03/15 21:01

tell document 1 of application "KEdit"


set WordsNum to selection length
end tell

tell me to activate
display dialog WordsNum

OSXのテキストエディットでは出来ないようです。
旧MacOSのSimpleTextでは試していません。
KEditで試してください。

KEditのDL先
http://www.drycarbon.com/be/beware/kedit/

KEdit for MacOS Xは、こちらです。
http://www.drycarbon.com/macosx/kedit/
    • good
    • 0

>「"1"をintegerに型変換できません。

」と表示されるのですが、なぜでしょう。

半角スペースが入ってるとか?

スクリプト全体を教えていただければ、原因がわかるかもしれません。

この回答への補足

先にも述べたように計算して出た結果ですから半角数字以外入っていないのですが、「スクリプトを見ないと分からない」といわれる覚悟で書きました。しかし、スクリプト全体はとても長くて書き込めないし、とにかく原因不明なのでどこから書けばよいやら・・・

補足日時:2004/03/14 20:52
    • good
    • 0
この回答へのお礼

有り難うございます。本当は1ではなかったのですが、小数点を見落としていました。どうもお騒がせしました。暗号化プログラムを作っていたので、スクリプトを公開できませんでした。

お礼日時:2004/03/15 21:04

テキストであればlength of~で数えられますよ。



他にもcount・・・・・・やnumber of~でも可能です。

countやnumber of~は色々な物を数えられます。リストやレコード、フォルダやファイルの数も数えられます。・・・・・・・・・・・・(files,foldersのように[s]を忘れないように。)

この回答への補足

「"1"をintegerに型変換できません。」と表示されるのですが、なぜでしょう。半角整数意外含まれていないのに原因不明です。なにか例はありませんか。

補足日時:2004/03/14 17:10
    • good
    • 0

えーと、「length of」って、Classicだと使えないんでしたっけ?


HyperCardの頃からあったと思ってましたが。

do shell script/osascriptを使っているのは、本質じゃないです。単に、面倒だっただけで。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!