SORU
9 EKİM 2008, PERŞEMBE


# - C bir dize inci oluşumu adres bilgisi?

Bariz bir yöntem dahili eksik olduğum sürece bir dize içinde bir dize inci geçtiği almak için en hızlı yolu nedir.

Başlangıç dizini ile adres bilgisi yöntemi her döngüde güncellenmekte döngü yapabilirim ama bana gereksiz geliyor.

CEVAP
9 EKİM 2008, PERŞEMBE


Gerçekten düzenli ifade /(.*?){n}/ n-bu dizenin geçtiği aramak için.

C# bu gibi görünebilir:

public static class StringExtender
{
    public static int NthIndexOf(this string target, string value, int n)
    {
        Match m = Regex.Match(target, "(("   Regex.Escape(value)   ").*?){"   n   "}");

        if (m.Success)
            return m.Groups[2].Captures[n - 1].Index;
        else
            return -1;
    }
}

Not:EkledimNormal ifade.Kaçışdüzenli ifade motoru için özel anlamı olan karakterleri aramak için izin için özgün çözüm için.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dylan Brenan

    Dylan Brenan

    22 Aralık 2009
  • Glyn Dewis

    Glyn Dewis

    25 AĞUSTOS 2007
  • HBO

    HBO

    17 Mayıs 2006