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

  • boogie2988

    boogie2988

    6 NİSAN 2006
  • brokenbellsVEVO

    brokenbellsV

    11 EYLÜL 2009
  • MADFINGER Games a.s.

    MADFINGER Ga

    21 NİSAN 2009