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

  • Gan Eden Productions

    Gan Eden Pro

    11 HAZİRAN 2011
  • Ricardo Cerqueira

    Ricardo Cerq

    28 Mayıs 2008
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009