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

  • Fr. Eckle Studios

    Fr. Eckle St

    29 Kasım 2006
  • NextGenWindows

    NextGenWindo

    8 Kasım 2011
  • Project Mooncircle

    Project Moon

    6 Aralık 2009