C# contains nedir?
Contains ifadesinin dözlük anlamına bakacak olursak “birşey başka birşeyi içerir” anlamı çıkacaktır. C#’da ise ifadenin karşılığı şöyledir.
C#’da, String.Contains() bir string metodudur. Bu metot, alt dizenin belirli bir dizge içinde olup olmadığını kontrol etmek için kullanılır.
Sözdizimi:
1 2 3 | public bool Contains(string str) |
Parametre:
str: Kontrol edilecek dizedir. Bu parametrenin türü System.String‘dir.
Dönüş Değeri: Boolean değerini döndürür. Eğer alt dize dizede varsa veya değer boş dizeyse (“”), True döndürür, aksi takdirde False döndürür.
Exception: Bu metot, str null ise ArgumentNullException verebilir.
Not: Bu yöntem, büyük/küçük harfe duyarlı denetimi gerçekleştirir. Arama her zaman dizenin ilk karakter konumundan başlayacak ve son karakter konumuna kadar devam edecektir.
Aşağıda Contains() Metodunu gösteren programlar bulunmaktadır.
Program 1 C# Contains Örnekleri:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | class Program { static void Main(string[] args) { // string type String str = "merhaba dünya"; String substr1 = "dünya"; String substr2 = "Dünya"; // String.Contains() Method Console.WriteLine(str.Contains(substr1)); Console.WriteLine(str.Contains(substr2)); Console.ReadLine(); } } |
Program 2: Sıralı karşılaştırma ve büyük / küçük harfe duyarsız sıra karşılaştırma kullanarak bir dizede bir alt dizenin olup olmadığını belirlemek için.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | using System; using System.Collections; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks; namespace ConsoleApp1 { public static class StringExtensions { public static bool Contains(this String str, String substr, StringComparison cmp) { if (substr == null) throw new ArgumentNullException("alt dizge alt dizge", " boş olmamalı."); else if (!Enum.IsDefined(typeof(StringComparison), cmp)) throw new ArgumentException("comp, üyesi değil", "StringComparison, comp"); return str.IndexOf(substr, cmp) >= 0; } } class Program { static void Main(string[] args) { String str = "Merhaba dünya"; String substr = "MERHABA"; // For Ordinal StringComparison comp = StringComparison.Ordinal; Console.WriteLine("{0:G}: {1}", comp, str.Contains(substr, comp)); // for OrdinalIgnoreCase comp = StringComparison.OrdinalIgnoreCase; Console.WriteLine("{0:G}: {1}", comp, str.Contains(substr, comp)); Console.ReadLine(); } } } |
Program 3: Aşağıdaki örnek, “Bilgisayar” dizesinin verilen dizenin bir alt dizesi olup olmadığını belirler. Dizede bulunursa, başlangıç konumunu da görüntüler.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | class Program { static void Main(string[] args) { string sub1 = "Merhaba Bu bilgisayarda C# çalışmaktadır."; string sub2 = "bilgisayar"; bool b = sub1.Contains(sub2); Console.WriteLine("'{0}' => '{1}': {2}", sub2, sub1, b); if (b) { int index = sub1.IndexOf(sub2); if (index >= 0) Console.WriteLine("{0} => başladığı sıra:{1}", sub2, index + 1); } Console.ReadLine(); } } |
Yorum Yap