Bir HTML kodunu düz metne dönüştürüyorum.Ama çok fazladan iade ve boşluk var.Nasıl onları kaldırmak için?Bir dizgede ekstra döndürmeler ve boşluklar regex ile nasıl kaldırılır?
cevap
İstediğin varsayarak yaşıyorum içine birden boşlukları çökecek
- için kaldırır tek boşluk ve
- iki veya daha fazla ardışık yeni satır bulun ve bunları tek bir yeni satırla değiştirin. bu doğru ise
, o zaman
resultString = Regex.Replace(subjectString, @"(|\r?\n)\1+", "$1");
Bu boşluk bozulmadan orijinal "türü" tutar ve ayrıca doğru Windows satır sonları korur kullanabilirsiniz. Ayrıca birine birden fazla sekme "yoğunlaştırmak" istiyorsanız, tek bir satırsonu içine satırbaşıyla ve boşluklar (her herhangi bir sayı) bir dizi yoğunlaştırmak için
resultString = Regex.Replace(subjectString, @"(|\t|\r?\n)\1+", "$1");
kullanmak kullanmak
resultString = Regex.Replace(subjectString, @"(?:(?:\r?\n)+ +){2,}", @"\n");
+1 yeni satırları korumak için ve yalnızca aynı türdeki –
kopyalarını çoğaltmak için iyi, ancak daha fazla uygunluk sorunu çözülemez. \ N \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n' – Shisoft
boşlukları ile karışık döndürür Ve bu durumda sonuç ne istiyorsun? Ya \ n \ n \ n \ n \ n \ n 'veya \ n \ n \ n \ n gibi bir şeye sahipseniz veya \ n \ n \ n \ n \ n \ n \ n \ n \ n \ n n' vb? –
Boşlukları gidermek ve döndürmek için Trim() öğesini kullanabilirsiniz. HTML'de boşluklar önemli değildir, böylece bunları System.String sınıfındaki Trim() yöntemini kullanarak dışarı aktarabilirsiniz.
I bir [HTML biçimlendirici] kullanmayı düşünebilirsiniz Döşeme sadece başlangıç alanını ve son uzayını kaldırabilir – Shisoft
Sanırım öyle değil. –
Aslında, yalnızca önde gelen ve sondaki karakterler desteklenir: http://msdn.microsoft.com/en-us/library/system.string.trim.aspx. Yine de bir alternatifi önermek için +1, belki OP için bu fikri genişletmeye çalışın ve düzenli bir çözüm sunun mu? –
string new_string = Regex.Replace(orig_string, @"\s", "")
iki veya daha fazla ardışık boşluk bulup bir ile değiştirin tümüyle beyaz
string new_string = Regex.Replace(orig_string, @"\s+", " ")
sadece bir
Teşekkürler, ne iade hakkında? – Shisoft
Boşlukları kaldırdığınız yolu gerçekten çok sevdim ;-) –
'\ s', boşluk, satırsonu, sekme ve form beslemesi (ve bazı uygulamalarda diğer bazı boşluklar) için kısa yoldur, dolayısıyla bu dönüşleri kaldıracak ve bunları dönüştürecek tek bir alan. –
kullandım Bunun için bir çok algoritma. Her döngü iyiydi ama bu açık ve mutlaktı.
//define what you want to remove as char
char tb = (char)9; //Tab char ascii code
spc = (char)32; //space char ascii code
nwln = (char)10; //New line char ascii char
yourstring.Replace(tb,"");
yourstring.Replace(spc,"");
yourstring.Replace(nwln,"");
//by defining chars, result was better.
- 1. Tüm boşluklar nasıl kaldırılır ve \ n \ r bir String içinde?
- 2. Oracle - beyaz boşluklar nasıl kaldırılır?
- 3. Bir dizeden son ve ilk boşluklar nasıl kaldırılır?
- 4. Dizeleri birleştirmek için boşluklar nasıl kaldırılır
- 5. Dize, matlab arasındaki boşluklar nasıl kaldırılır?
- 6. Javascript'teki bir dizgede karakter bütün oluşumu nasıl kaldırılır?
- 7. Son virgülü bir dizgede "ve"
- 8. Android'de ActionBar'da sol dolgu marjı ekstra alan nasıl kaldırılır?
- 9. socket.io ile ekstra params
- 10. Dizgede
- 11. ile ve regex
- 12. Değişkenleri bir dizgede echo ve bash ile hizalayabilir miyim?
- 13. Regex ile -, ::, (ve)
- 14. dizgede izin verilen eşitlik testi
- 15. Log4Net ve ekstra alanlar
- 16. ’ bir metin dizesinden nasıl kaldırılır ve '?
- 17. Bir değişkende ve bir dizgede geçirme nasıl yapılır Javascript
- 18. Bir öğenin içeriği JQuery ile nasıl kaldırılır?
- 19. Dnu ile bir paket nasıl kaldırılır?
- 20. nasıl belgelemek, orijinal sırayla ve ekstra simgeleri olmadan eklenen eleman ile listenin üzerine nasıl orijinal sırayla ve ekstra semboller
- 21. PHPQuery ile bir HTML etiketi nasıl kaldırılır?
- 22. x kelimeden daha fazla olan satırlar nasıl kaldırılır? notepad ++ regex
- 23. Javascript içindeki bir dizgede karakterleri nasıl değiştirebilirim?
- 24. Regex, ardışık olmayan alfa karakterlerini tek bir char ile değiştir
- 25. = ve P kısacası bir regex
- 26. Python'da bir dizgede ° karakter nasıl alınır?
- 27. Regex kullanarak tırnak işaretleri arasında tırnak nasıl kaldırılır?
- 28. Bölünmüş boşluklar
- 29. C++ bir dizgede (metin dosyası)
- 30. Objective-C NSRegularExpressions, bir dizgede sayıların ilk oluşumunu bulmak için
apaçık gelebilir ama yerine boşluklar ve CRLFlerin yeterince HTML güzelleştirmek etmezse, siz (http://stackoverflow.com/a/15120971/382515) –