SORU
7 Kasım 2008, Cuma


Numaraları için düzenli ifade sadece

Hiç düzenli ifadeler kullanmadım, sorun giderme zorluk yaşıyorum. İstediğim düzenli maç sadece zaman alan string tüm numaraları; ama iki örnek aşağıda eşleşen bir dize içeren tüm numaraları artı bir eşittir işareti gibi "1234=4321". Bu davranışı değiştirmek için bir yolu vardır eminim, ama dediğim gibi, pek düzenli ifadeler ile yaptım.

string compare = "1234=4321";
Regex regex = new Regex(@"[\d]");

if (regex.IsMatch(compare))
{ 
    //true
}

regex = new Regex("[0-9]");

if (regex.IsMatch(compare))
{ 
    //true
}

Bu konularda durumda, C kullanıyorum# ve .NET 2.0.

CEVAP
7 Kasım 2008, Cuma


Başından kullanın ve çapalar sonunda.

Regex regex = new Regex(@"^\d$");

Eğer birden fazla basamak maç gerekiyorsa "^\d $" kullanın.


"\d" [0-9] maç olacak ve Doğu Arapça gibi diğer basamak karakterleri ٠١٢٣٤٥٦٧٨٩ rakamları unutmayın. "^[0-9] $" sadece Arapça rakamları eşleşen 0 - 9 sınırlamak için.


Herhangi bir sayısal temsilleri sadece rakam (yeni başlayanlar için ondalık değerleri gibi), @tchristbakın kapsamına alınması gerekir'10 *s*.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ipsy Makeup Tips

    ipsy Makeup

    19 ŞUBAT 2009
  • Ordetta Price

    Ordetta Pric

    12 EYLÜL 2011
  • REK Roth Productions

    REK Roth Pro

    8 Ocak 2011