Разбить одно предложение на несколько строк

  • Автор темы Автор темы MarcoPolo
  • Дата начала Дата начала

MarcoPolo

Client
Регистрация
06.10.2012
Сообщения
143
Реакции
13
Баллы
18
В тексте встречаются очень длинные предложение, которые содержат много "," ";". Как построить логику действий и какую регулярку использовать, чтобы, например каждый второй или третий и последующие знаки "," и ";" были заменены на "." ввод.
Регулярка замены "," будет выглядеть наверное как ,{-String.Enter} . А как по проще можно количество запятых или точек с запятой посчитать от начала предложения, чтобы начать действие со второй или третьей "," и ";"?
 
Если знакомы с c#, то сложную логику работы с текстом легко реализовать в соответствующем действии.
 
Hungry Bulldozer
Дайте угадаю, а если я не знаком с c#, то сложную логику работы с текстом трудно реализовать, да ? :) *double-facepalm*
Это конечно хорошо... Еще бы если подсказка была более практической. Потому как я не знаю.
 
Будьте бережней друг к другу.
Новый Год на носу.
:beer:
 
Спасибо всем, что поддерживаете тему, предлагаю здесь писать все, кроме необходимого :)
 
1. Замена всех "," и ";" на "."
JavaScript:
Развернуть Свернуть Копировать
StringBuilder text = new StringBuilder();

text.Append("Text, text, text, text; text; text;");

char[] opers = new char[] {',', ';'};

for (int i = 0; i < text.Length; i++)
{
	foreach (char c in opers)
	{
		text.Replace(c.ToString(), ("."));
	}
}

//Вернет  =>  Text. text. text. text. text. text.
return text;

2. Получить количество "," в строке.
JavaScript:
Развернуть Свернуть Копировать
            //Строка с текстом
            string str = "Text, text, text, text, text, text.";

            //Преобразуем строку в массив  
            char[] ch = str.ToCharArray();
            
            //Список всех элементов в строке которые содержат символ ';' 
            var index = new List<string>();

            //Перебираем все элементы строки
            for (int i = 0; i < str.Length; i++)
            {
                //Если элемент содержит символ ';'
                if (ch[i] == ',')
                {
                    //Заносим в список его индекс в строке
                    index.Add(i.ToString());
                }
            }

            //Количество элементов списка. Сколько ',' найдено в строке.
            int count = index.Count();
            
            //Вернет => 5
            return count;
 
  • Оценить
Реакции: MarcoPolo

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)