1

だから私のコードは次のようになります

string order = "Im sending you big apples x100";
string[] fruits = { "apples", "big apples", "oranges" };
string[] vegetables = { "tomatoes", "carrots", "cucumber" };

string[] words = order.Split();

if (fruits.Any(w => words.Contains(w)))
{
  //do things here
}
if (vegetables.Any(w => words.Contains(w)))
{
  //do things here
}

注文文字列に応じて、可能な場合は正確に何であるかを見つけられるようにしたいのですが、私の場合、文字列配列に 2 つの単語が順番にある場合、このコードは機能しません。文字列配列に 2 つの単語がある場合、どうすればよいですか. 「大きなりんご」がある場合にのみ検索したいのですが、「りんご」しかできないことはわかっていますが、順序文字列でシーケンスワードを検索したいです。

4

3 に答える 3

0
var escapedWords = words.Select(w => @"\b" + Regex.Escape(w) + @"\b");

var pattern = new Regex("(" + string.Join(")|(", escapedWords) + ")");
var q = pattern.IsMatch(myText);
于 2013-05-08T11:01:41.820 に答える