c#在文本中找到某种东西

时间:2016-03-28 12:03:35

标签: c# text find option

我需要在文字中搜索,但richtextbox.Find("something");中是否可以有多个选项?例如richtextbox.Find("something" or "somethingelse");

1 个答案:

答案 0 :(得分:0)

你可以实现类似这样的内容(扩展方法 FindAny用于RichTextBox):

  public static class RichTextBoxExtensions {
    public static int FindAny(this RichTextBox source, params String[] toFind) {
      if (null == source)
        throw new ArgumentNullException("source");
      else if (null == toFind)
        throw new ArgumentNullException("toFind");

      int result = -1;

      foreach (var item in toFind) {
        if (null == item)
          continue;

        int v = source.Find(item);

        if ((v >= 0) && ((result < 0) || (v < result)))
          result = v;
      }

      return result;
    }
  }

....

  int result = richtextbox.FindAny("something", "somethingelse");