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

英語のテキストからその中に入っているすべての英単語を取り出して大まかには次のような条件で単語表を作りたいと考えています.既製ソフトを使ってできるだけ手間のかからない方法で行いたいと考えていますが,どのような方法があるでしょうか.
条件0:意味の違いは無視する.
条件1:名詞,動詞の変化形は原型に戻す.
    desks→desk
    men→man
    studied→study
    began→begin
    beginning→begin
条件2:同じ単語は一つだけ表に入れる
条件3:記号の取り扱い
    ‐は,成語はそのまま取り入れ,行替えのハイフンは数えない
    ピリオド,カンマ,括弧など無視
    

A 回答 (2件)

エディタの秀丸でマクロを使うのが最も簡便です。


1.
//単語抽出マクロ

movetolineno 1, 1;

while( code !=-1 ){

if( code >0x40 && code< 0x5E || code >0x60 && code< 0x7F || code == 0x2F || code == 0x27 || code == 0x2D )
right;
else{
delete;
if( column >0 ) insert "\n";
}
}
endmacro;

2.次に頻度を算出します。

//新単語頻度算出マクロ

movetolineno 1, 1;
while( code !=-1){
#freq = 1;
getsearch;
$s = searchbuffer;
searchdown $s, word;
if( result >0){
gosearchstarted;
replaceallfast $s,word;
#freq = result;
}
gosearchstarted;
golineend;
insert "\t" + str( #freq );
right;
}
endmacro;

3.2.で出来た頻度表をExellに読み込ませ、ソートし、手作業で原形等に直します。この手作業の自動化は例外が多く困難だと思います。

マクロの使い方は秀丸で調べて下さい。
    • good
    • 0

難しそうですね


がんばってください
    • good
    • 0

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