F.Ko-Jiの「一秒後は未来」

Yahoo!の形態素解析APIを使って人物名を名字と名前に分割する

ちょっと人物名を「名字」と「名前」に分割する必要があって何を使おうかなぁと5分くらい悩んでいたのですが、Yahoo!の形態素解析APIを使ってみるとあっさりできました。

やり方

真中瞳さんが「東風万智子」という芸名で活動を再開したらしいので「東風万智子」をクエリにしてみます。

リクエストするURLは以下のような感じ。

http://jlp.yahooapis.jp/MAService/V1/parse?appid=アプリケーションID&results=ma
&sentence=%E6%9D%B1%E9%A2%A8%E4%B8%87%E6%99%BA%E5%AD%90

アプリケーションIDをセットしてこのURLをリクエストすると、以下のようなレスポンスが返ってきます。

<?xml version="1.0" encoding="UTF-8" ?>
<ResultSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns="urn:yahoo:jp:jlp"
           xsi:schemaLocation="urn:yahoo:jp:jlp http://jlp.yahooapis.jp/MAService/V1/parseResponse.xsd">
  <ma_result>
    <total_count>2</total_count>
    <filtered_count>2</filtered_count>
    <word_list>
      <word>
        <surface>東風</surface>
        <reading>こち</reading>
        <pos>名詞</pos>
      </word>
      <word>
        <surface>万智子</surface>
        <reading>まちこ</reading>
        <pos>名詞</pos>
      </word>
    </word_list>
  </ma_result>
</ResultSet>

ばっちり名字と名前に分割できてます。あとは surface のところを正規表現でマッチングさせればOKです。一度解析したデータはどこかに格納しておきましょう。

こんな時に使える

Twitterの検索APIで人物名をフルネームで検索しても検索結果が少なく、名字と名前で区切って検索するとまともに検索できるというケースが多く見受けられるので、そういう場合にさくっと形態素解析で名字と名前に分割してあげるといいです。

» Yahoo!デベロッパーネットワーク – テキスト解析 – 日本語形態素解析

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

著者について

fkoji

F.Ko-Ji

Webエンジニアやってます。最近は ドットインストール の開発がお仕事です。その傍ら、個人で Meity電車遅延なう梅酒.in#グラドル自画撮り部 の部室といったネットサービスを開発・運営してます。梅酒と草野球とリアル脱出ゲームが好きです。

» 詳しいプロフィールや運営サービスの一覧など