Проверить строку на наличие списка подстрок - PullRequest
0 голосов
/ 29 ноября 2011

Как я могу проверить определенную строку, чтобы увидеть, содержит ли она ряд подстрок? Конкретно как то так:

public GetByValue(string testString) {

    // if testString contains these substrings I want to throw back that string was invalid
    // string cannot contain "the " or any part of the words "College" or "University"

   ...
}

Ответы [ 5 ]

1 голос
/ 29 ноября 2011

Если производительность является проблемой, вы можете рассмотреть возможность использования RegexStringValidator class .

0 голосов
/ 22 декабря 2011

Принято решение не проверять наличие строк, чтобы ограничить возврат моих данных, вместо этого ограничил мой возврат до .Take (15), и если число возвращаемых записей превышает 65 536, просто верните ноль

0 голосов
/ 29 ноября 2011

Вы можете проверить это следующим образом ....

   class Program
{



public static bool checkstr(string str1,string str2)
{
 bool c1=str1.Contains(str2);
 return c1;

}

public static void Main()
{
string st = "I am a boy";
string st1 = "boy";

bool c1=checkstr(st,st1);
//if st1 is in st then it print true otherwise false
      System.Console.WriteLine(c1);
}
}
0 голосов
/ 29 ноября 2011

Это интересный вопрос.Как упомянул @Jon, регулярное выражение может быть хорошим началом, потому что оно позволит вам оценить несколько отрицательных совпадений одновременно (потенциально).Наивный цикл будет гораздо менее эффективным по сравнению.

0 голосов
/ 29 ноября 2011

Вы можете использовать метод string.Contains ()

http://msdn.microsoft.com/en-us/library/dy85x1sa.aspx

// This example demonstrates the String.Contains() method
using System;

class Sample 
{
public static void Main() 
{
string s1 = "The quick brown fox jumps over the lazy dog";
string s2 = "fox";
bool b;
b = s1.Contains(s2);
Console.WriteLine("Is the string, s2, in the string, s1?: {0}", b);
}

} / * Этот пример дает следующие результаты:

Является ли строка s2 в строке s1 ?: True * /

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...