#!/usr/bin/python
# -*- coding: utf-8 -*-
import MeCab
import q30

'''
「AのB」のように2つの名詞が'の'で連結されている名詞を抽出
'''
def get_link_noun(ma_dic):
    target = '名詞'
    word = 'の'
    max_length = 2
    tagger = MeCab.Tagger("-Ochasen -d /usr/local/Cellar/mecab/0.996/lib/mecab/dic/mecab-ipadic-neologd")

    for s, p in zip(ma_dic['surface'], ma_dic['pos']):
        # キーワードが名詞かどうか
        if p != target:
           continue
        # キーワードを'の'で分割した時、['A','B']の形になるか
        abs = s.split(word)
        if len(abs) != max_length:
           continue
        # ['A','B']それぞれのワードを解析し、どちらも名詞と判定されるか
        abp = []
        for ab in abs:
            node = tagger.parseToNode(ab).next
            abp.append(node.feature.split(',')[0])
        if abp[0] != target or abp[1] != target:
           continue
        print s, p

if __name__ == '__main__':
    ma_dic = q30.maResultRead()
    get_link_noun(ma_dic)
