- ベストアンサー
文章の数 emacs(mule)
はじめまして。 emacs(mule)で日本語の文章を書いたのですが、 その文章数を知りたいのですが、 どのようなコマンドを実行すればよいのでしょうか? …や。、?、」などで終わっているので、苦戦しております。 LINUXを使用しています。 どうか、よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
とにかく,正確に数えたいなら,パターンをきちんと把握しないと始まらないのに,その情報がありません. 終わりの文字が … 。 ? 」 の4種類だとして,単にこれらの出現数を数えるだけなら簡単ですよね. perl なら以下のような感じでしょうか. #!/usr/bin/perl $re_end="。|」|…|?"; open IN, "hoge.txt"; $n=0; while(<IN>){ @matched = /($re_end)/g; $n += ($#matched + 1); } print "$n\n"; これらの文字のあとにセンテンスが続くような場合は,そういうパターンが除かれるように,確実に正規表現 $re_end に表してやれば良いわけですが,難しいでしょうかね.
その他の回答 (3)
- nightowl
- ベストアンサー率44% (490/1101)
考え方を変えて、文と文の間に文章中には出現しないような区切り文字(デリミタ) を挿入し、その個数を数えてみたらいかがでしょう? センテンスの総数はデリミタの数+1になりますが。
たぶん、sentenceの数をカウントしたい、という意味でしょう。 文末に句読点がないケース、(文脈上は)文末ではないが、「.」や「?」があるケース、カギ括弧や引用符内の文字列の存在も考慮すると、正規表現を駆使しても非常に困難と思われます。
補足
補足します。 nanashinogombeiさんが言われたように、sentenceの数をカウントしたいと思っています。 ただ、。だけでなく」で終わったり、?で終わったりしているので、難しくて困っております。
- nightowl
- ベストアンサー率44% (490/1101)
こんにちは。「文章数」という言葉の意味が少しつかみにくいのですが、 「文字数」のことでしょうか?もう少し具体的に補足をいただければ幸いです。
お礼
パールが少し苦手なので、わかりづらいのですが、。などのあとにも文章が続くので、なんとも言えないですね。 … 。 ? 」 の文字の個数を数えてそこから、文章の数を出してみようかと思います。 どうもありがとうございます。