2010-08-01 3 views
10

Est-ce que C# fournissait une méthode pour comparer la chaîne avec un motif générique comme. Ou je peux dire que je veux trouver un "Like Operator" pour faire une comparaison de chaînes. Supposons que j'ai une chaîne .J'ai aussi un paragraphe, je veux trouver la chaîne sur ce parapgraphe, Mais comment.En SQL, nous pouvons le faire en utilisant simplement l'opérateur LIKE.Comment faire une comparaison de chaîne avec un motif générique en C#

Toute suggestion et réponse est reconnaissante.

+1

double possible de [System.StringComparer qui prend en charge caractères génériques (*)] (http://stackoverflow.com/questions/2433998/system-stringcomparer-that-supports-wildcard) – Gabe

Répondre

12

Les caractères génériques sont une bête compliquée (une forme d'expressions régulières), mais il semble que vous vouliez utiliser la méthode Contains. Vous pouvez simplement faire paragraph.Contains(sentence).

6

String a une méthode Contains qui devrait suffire, retourne un boolean

"Big string that represents a paragraph".Contains("that"); 

Exemple du Contains Method MSDN page:

// 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); 
    } 
} 
/* 
This example produces the following results: 

Is the string, s2, in the string, s1?: True 
*/ 

Si vous avez besoin d'appariement plus avancé alors Regex pourrait être la bonne voie, mais à partir de l'exemple que vous avez déclaré, je pense que cela fonctionnera bien.

Questions connexes