単語カウントについて

  1. 主に文書作成に愛用させて頂いてます。
    論文で単語数の制限がある場合、ワードにコピペして文字カウントをしていますが、Meryで行う事は可能でしょうか。
    よろしくお願い致します。

     |  clydemender  |  返信
  2. Mery をご愛用くださりありがとうございます。
    単語数のカウントですが、一応それっぽいマクロはあります。
    カウントではなく単語一覧の抽出ですが…

    http://www.haijin-boys.com/wiki/%E5%8D%98%E8%AA%9E%E3%82%92%E6%8A%BD%E5%87%BA

    少し手を加えればワードのように文字数や単語数を表示させることも可能だとは思います。
    日本語の単語になってくると厳しいかもしれませんが。

     |  Kuro  |  返信
  3. ありがとうございます。英文なので重複を許せば行数で分かりそうですが、プログラミングの経験がないので勉強していじってみます。

     |  clydemender  |  返信
  4. 半角英数の単語数なら、拙作の「文字カウント」マクロで実現できそうです。
    http://www.haijin-boys.com/wiki/%E6%96%87%E5%AD%97%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88

    Word では 半角英数記号 [!-~] が連続する箇所を「半角英数の単語」1語とみなしているようなので、マクロを手直しする必要がありますが。

    ▼文字カウント.js : 19行目(論理行)あたり
    そのままだと「半角英数の単語」の定義が Word と異なるので書き換えが必要です。

    {type:"英単", re:/\b(?=\w)/g}, //[0-9A-Za-z_]で構成される単語
       ↓
    {type:"英単", re:/(?=(?:[^!-~]|^)[!-~])/g}, //半角英数記号(ASCII文字)が連続する箇所
    //{type:"英単", re:/\b(?=\w)/g}, //[0-9A-Za-z_]で構成される単語

    ▼文字カウント.js : 104行目(論理行)あたり
    行頭の // 2文字を削除するとカウント結果が追加表示されるようになります。

    //+" 英単\t: "+(type["英単"])+"\n"
       ↓
    +" 英単\t: "+(type["英単"])+"\n"

    ちなみに、19行目あたりの定義変更を行うと、以下のように語数が変わります。

    ◆変更前 /\b(?=\w)/g
    That's right.→ That/s/right (3語) アポストロフィー ' は単語の区切りになる
    strike-out → strike/out (2語) ハイフン - は単語の区切りになる
    1.4142 → 1/4142 (2語) ピリオド . は単語の区切りになる
    under_bar → under_bar (1語) アンダーバー _ は区切りにならない
    Präludium → Pr/ludium (2語) ドイツ語ウムラウトなどは非対応(区切りになる)

    ◆変更後 /(?=(?:[^!-~]|^)[!-~])/g
    That's right.→ That's/right. (2語)
    strike-out → strike-out (1語)
    1.4142 → 1.4142 (1語)
    under_bar → under_bar (1語) 変更前と同じ
    Präludium → Pr/ludium (2語) 変更前と同じ

     |  masme  |  返信
  5. ありがとうございます、単語をカウント出来るようになりました!
    英文は単語数、日本語は字数での制限が多いので、どちらも対応できそうです。
    ありがとうございました。

     |  clydemender  |  返信
スポンサーリンク