UNPKG

nadesiko3

Version:
48 lines (47 loc) 1.68 kB
/** * 助詞の一覧 */ // 基本的な助詞の一覧 export const josiList = [ 'について', 'くらい', 'なのか', 'までを', 'までの', 'による', 'とは', 'から', 'まで', 'だけ', 'より', 'ほど', 'など', 'いて', 'えて', 'きて', 'けて', 'して', 'って', 'にて', 'みて', 'めて', 'ねて', 'では', 'には', 'は~', 'んで', 'ずつ', 'は', 'を', 'に', 'へ', 'で', 'と', 'が', 'の' ]; // 「もし」文で使う助詞 export const tararebaJosiList = [ 'でなければ', 'なければ', 'ならば', 'なら', 'たら', 'れば' ]; // 意味のない助詞(削除する) #936 #939 #974 export const removeJosiList = [ 'こと', 'である', 'です', 'します', 'でした' ]; /** * 「もし」文で使う「たら」「れば」などの一覧をプログラムで扱いやすいようマップに変換したもの */ export const tararebaMap = {}; tararebaJosiList.forEach(josi => { josiList.push(josi); tararebaMap[josi] = true; }); /** * 意味のない助詞(削除する)をマップに変換したもの */ export const removeJosiMap = {}; removeJosiList.forEach(josi => { josiList.push(josi); removeJosiMap[josi] = true; }); // 「もの」構文 (#1614) const josiListMono = []; for (const jo of josiList) { josiListMono.push('もの' + jo); josiListMono.push(jo); } // 文字数の長い順に並び替え josiListMono.sort((a, b) => b.length - a.length); // 正規表現で助詞をマッチできるようにする const pat = '^[\\t ]*(' + josiListMono.join('|') + ')'; export const josiRE = new RegExp(pat); export const josiListExport = josiList;