Inserindo quebra de linha em um texto com C#

Eventualmente eu preciso do código abaixo para colocar quebra em um texto corrido que encontro, acho que pode ser útil pra mais alguém, por isso resolvi postar.

using System;
using System.Text.RegularExpressions;
using VisualWebRipper.Internal.SimpleHtmlParser;
using VisualWebRipper;
public class Script
{
	public static string InsereQuebra(string TEXTO_GRANDE)
	{
		try
		{	
			//obtendo o texto passado no parametro
			string texto = TEXTO_GRANDE;
			//substituindo qq tipo de aspas por apóstrofe
			texto = Regex.Replace(texto, @"[\u2018\u2019\u201a\u201b\u0022\u201c\u201d\u201e\u201f\u301d\u301e\u301f]", "'", RegexOptions.IgnoreCase);
			//removendo linhas em branco
			texto = Regex.Replace(texto, @"\s+\n", "\n", RegexOptions.IgnoreCase);
			//removendo espaços em branco no começo e no fim do texto
			texto = texto.Trim();
			//declarando variáveis de controle			
			int espaco = 0;
			int indice = 0;
			int inc = 0;
			
			Match m = Regex.Match(texto, "\n", RegexOptions.IgnoreCase);
			int QTDE_ESPACO = 120;
			if(!m.Success){
				//removendo espaços em branco
				texto = Regex.Replace(texto, @"\s\s+", " ");
				foreach(char c in texto) 
				{	indice++;
					if(char.IsWhiteSpace(c)) 
					{	
						espaco++;
						//Com 120 espacos os paragrafos ficam com cerca de 5 linhas
						if(espaco % QTDE_ESPACO == 0){
							texto = texto.Insert(indice + inc, "\n");
							inc++;	
						}
					}
				}
			}
			return texto;
		}
		catch(Exception exp)
		{
			return "";
		}
	}
}
Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

w

Conectando a %s