kakakakakku blog

Weekly Tech Blog: Keep on Learning!

PHPで正規表現を使ってニュースから発言を抽出する_2

昨日の続き.

「ほにゃらら」との見通しを示した。

という発言判定語におまけがついた文をどう処理しようかというところで,よく考えたら簡単なことだった.
発言判定語セットの前に(.*)を追加するだけ.
改正版コードは以下.

$news = "ニュース本文";
if(preg_match("/((.*)は|も|が).*(「.*」)と(.*)(発言した|強調した|言った|表明した|語った|述べた|述べ|訴えた|約束した|示した).*。/",$news,$str)){
  echo "一致しました : ".$str[2]." ".$str[3]." ".$str[5];
}else{
  echo "一致しません";
}


次の問題は抽出した人物名が表記揺れのオンパレードだってことかなー.

ちなみに勉強に使っている本は正規表現ケーススタディブックです.非常にわかりやすい!