A noun parser for MeCab gem.
Ruby
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib/mecab
spec
.gitignore
.rspec
.travis.yml
Gemfile
README.md
Rakefile
mecab-noun_parser.gemspec

README.md

Mecab::NounParser

Build Status Gem Version

This gem is a noun parser for MeCab gem. This counts the number of nouns, and arranging it in descending order.

Installation

Add this line to your application's Gemfile:

gem 'mecab'
gem 'mecab-noun_parser'

And then execute:

$ bundle

Usage

Here's a simple example to use:

require 'mecab'
require 'mecab-noun_parser'

parser = MeCab::NounParser.new

parser << 'Rubyは、手軽なオブジェクト指向プログラミングを実現するための種々の機能を持つオブジェクト指向スクリプト言語です。本格的なオブジェクト指向言語であるSmalltalk、EiffelやC++などでは大げさに思われるような領域でのオブジェクト指向プログラミングを支援することを目的としています。もちろん通常の手続き型のプログラミングも可能です。'
parser << 'Rubyはテキスト処理関係の能力などに優れ、Perlと同じくらい強力です。さらにシンプルな文法と、例外処理やイテレータなどの機構によって、より分かりやすいプログラミングが出来ます。'
parser << 'まあ、簡単にいえばPerlのような手軽さで「楽しく」オブジェクト指向しようという言語です。どうぞ使ってみてください。'
parser << 'Rubyはまつもと ゆきひろが個人で開発しているフリーソフトウェアです。'

p parser.parse.nouns

This results is as follows:

[
  {:noun=>"Ruby", :count=>3},
  {:noun=>"オブジェクト指向プログラミング", :count=>2},
  {:noun=>"Perl", :count=>2},
    :
  {:noun=>"個人", :count=>1},
  {:noun=>"開発", :count=>1},
  {:noun=>"フリーソフトウェア", :count=>1}
]

Except some words

If you don't want to include some words, you should initialize with :except option:

parser = MeCab::NounParser.new(except: ['Smalltalk', 'Eiffel', ...])

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/kami-zh/mecab-noun_parser.