SORU
28 EKİM 2008, Salı


Dize için bir alternatif var.Bu büyük / küçük harfe duyarlıdır yerine?

Bir dize arama ve bir değer veritabanından çekilmiş %FirstName% %PolicyAmount% Tüm oluşumları değiştirmek istiyorum. Sorun Ad büyük / küçük harf değişir. String.Replace() yöntemi kullanarak engelliyor beni. Öner konu ile ilgili web sayfaları gördüm

Regex.Replace(strInput, strToken, strReplaceWith, RegexOptions.IgnoreCase);

Ancak ben denemek ve $0 %PolicyAmount% yerine nedense yerini hiçbir zaman gerçekleşir. Ben dolar işareti düzenli ayrılmış bir karakter olmak ile ilgili bir şey olduğunu varsayalım.

Düzenli özel karakterler ile başa çıkmak için giriş dezenfektan içermeyen kullanabileceğim başka bir yöntem var mı?

CEVAP
28 EKİM 2008, Salı


Dize gibi görünüyor.DeğiştiringerekirStringComparison bir argüman alır bir aşırı yüklenme var. Yok, böyle bir şey deneyebilirsiniz:

public static string ReplaceString(string str, string oldValue, string newValue, StringComparison comparison)
{
    StringBuilder sb = new StringBuilder();

    int previousIndex = 0;
    int index = str.IndexOf(oldValue, comparison);
    while (index != -1)
    {
        sb.Append(str.Substring(previousIndex, index - previousIndex));
        sb.Append(newValue);
        index  = oldValue.Length;

        previousIndex = index;
        index = str.IndexOf(oldValue, index, comparison);
    }
    sb.Append(str.Substring(previousIndex));

    return sb.ToString();
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Darren Kitchen

    Darren Kitch

    3 EKİM 2011
  • happyjpy

    happyjpy

    22 AĞUSTOS 2009
  • jagadambarecords

    jagadambarec

    13 AĞUSTOS 2008