-6

私はc#でプロジェクトを行っています。絵文字に基づいて、文が肯定的か否定的か、あいまいかをチェックするのに役立つコードを探しています。

例えば:

  1. 私は自分の国を愛しています :) - (ポジティブ) ハッピー スマイリーが含まれているため
  2. 私は自分の国を愛しています :( - (ネガティブ) 悲しいスマイリーが含まれているからです
  3. 天気は良いです :( :) -(あいまい) 2 つのスマイリーが含まれているため、ポジティブかネガティブかを判断するのが曖昧です。
  4. 私は大学に行きたくない :( :) :) - (ポジティブ) 2 つの幸せなスマイリーと 1 つの悲しいスマイリーが含まれているからです。

私のプロジェクトの分野は感情分析です。

4

2 に答える 2

1

使用するRegex.Matches

var upScore = Regex.Matches(input, @":\)").Count;
var downScore = Regex.Matches(input, @":\(").Count;
var totalScore = upScore - downScore;

で副作用を使用するのは悪い習慣ですが、 を使用して文字列を 1 回通過させるMatchEvaluatorこともできます。Regex.Replace

var score = 0;
MatchEvaluator match = m =>
{
    score += m.Value[1] == ')' ? 1 : -1;
    return m.Value;
};
Regex.Replace(input, ":[()]", match);
于 2013-04-07T15:05:09.520 に答える