c# String içersinden belirli bir karakteri nasıl alırım?

elessar (65) 11 yıl önce sordu

c# Consol uygulamasında 

string kelime =  fh_start_index%3d12%26fh%45%;

kelime içersinde "fh_start_index%3d" 'den başlayarak ilk % karaktere kadar nasıl aldırabilirim.

Aklıma Regex sınıfı geldi fakat kullanımını bulamadım.

Sadece 12 degerini almak istiyorum kelime içersinden.

Kolay Gelsin

Toplam 2 cevap


alattin (17127) 11 yıl önce cevapladı

Regex'e gerek yok. String işlemleri için Substring() ve IndexOf() metodları işinizi görecektir.

 string kelime =  "fh_start_index%3d12%26fh%45%";
 string aranan = kelime.Substring(0, kelime.IndexOf('%'));

çıktısı 

fh_start_index

olacaktır.  Substring(başlangıç indeksi,boyut)  şeklinde  kullanılabilir.

IndexOf("karakter") string ifade içerisinde karakteri bulur ve indeks numarasını döndürür.

12 değerini yakalayabilmek için;

  string kelime =  "fh_start_index%3d12%26fh%45%";
  string aranan = kelime.Substring(kelime.IndexOf("3d")+2,2);

Çıktısı 12 olacaktır.

alattin 11 yıl önce

eksik okumuşum cevabı düzenledim.

ergin (2539) 11 yıl önce cevapladı
 string kelimeniz =  "fh_start_index%3d12%26fh%45%";
 string cevap = kelime.Substring(kelime.IndexOf(16),2);

şeklinde basitçe kullanarakta istediğiniz cevaba ulaşabilirsiniz.