SORU
1 EYLÜL 2011, PERŞEMBE


Bir Dize içinde Birden fazla Karakter yerine

Daha iyi bir yol dizeleri değiştirmek için var mı?

Yerine karakter dizisi veya string bir dizi çekmek değil, bu beni şaşırttı. Benim kendi uzantısı yazabilirim ama eğer daha iyi bir şekilde aşağıdakileri yapmak için inşa olup olmadığını merak ettim sanırım? En son haber Yerine bir dize bir karakter.

myString.Replace(';', '\n').Replace(',', '\n').Replace('\r', '\n').Replace('\t', '\n').Replace(' ', '\n').Replace("\n\n", "\n");

Teşekkürler.

CEVAP
1 EYLÜL 2011, PERŞEMBE


Bir düzenli ifade yerine kullanabilirsiniz.

s/[;,\t\r ]|[\n]{2}/\n/g
  • Başında s/ bir arama anlamına gelir
  • [ ] arasındaki karakter (herhangi bir sırada) arama yapılacak olan karakter
  • / ikinci arama metni sınırlandırır ve metni değiştirin

İngilizce, bu okur:

"Arama için ; , \t \r (alan) ya da tam olarak iki sıralı \n yerini \n"

C#, aşağıdakileri yapabilirsiniz: (System.Text.RegularExpressions aldıktan sonra)

Regex pattern = new Regex("[;,\t\r ]|[\n]{2}");
pattern.Replace(myString, "\n");

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BDGcustoms

    BDGcustoms

    24 NİSAN 2011
  • Cristina Landa

    Cristina Lan

    28 Ocak 2010
  • xiaoyu85

    xiaoyu85

    20 ŞUBAT 2010