Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 14.10.2018
Сообщений: 15
1

В строке после каждого слова вставить запятую

23.03.2019, 12:07. Показов 3320. Ответов 6
Метки нет (Все метки)

В строке после каждого слова вставить запятую, учитывая что пробелов между словами может быть неограниченное количество.
Помогите написать код для этой программы пж.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.03.2019, 12:07
Ответы с готовыми решениями:

В строке после каждого пробела вставить запятую
Разработать функцию Change(const S:string):string, возвращающую строку, в которой после каждого...

Вставить в строке после каждого слова точку
Дана строка символов ,вставить в строке после каждого слова точку.

После каждого слова в строке вставить запятую
Вводится строка. После каждого слова в строке вставить запятую, а в конце предложения стоит точка.

Строки С++. В строке после каждого слова вставить запятую
В строке после каждого слова вставить запятую. написал вот так что если пробел то ставим вместо...

__________________

Записывайтесь на профессиональные курсы С#-разработчиков‌
6
148 / 100 / 51
Регистрация: 08.01.2013
Сообщений: 581
23.03.2019, 12:08 2
C#
1
String.Replace(" ",", ");// заменяет пробел, на запятую с пробелом
1
0 / 0 / 0
Регистрация: 14.10.2018
Сообщений: 15
23.03.2019, 13:14  [ТС] 3
Нужно не заменить а именно вставить.
Когда я встваил ваш код то он после каждого пробела ставил запятую, чуть модернизировал это но предподователь ответил что нужно именно вставить.
0
Эксперт JS
5400 / 3115 / 1507
Регистрация: 14.06.2018
Сообщений: 5,889
23.03.2019, 13:17 4
Цитата Сообщение от ЛадиславКовач Посмотреть сообщение
В строке после каждого слова вставить запятую, учитывая что пробелов между словами может быть неограниченное количество.
Что делать с пробелами, из условия непонятно. Допустим, не будем их трогать.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using System;
using System.Text.RegularExpressions;
 
namespace Question2423920
{
    class Program
    {
        static void Main(string[] args)
        {
            var str = "В строке после         каждого слова  вставить         запятую";
            var result = Regex.Replace(str, @"\b\S+?\b", "$0,", RegexOptions.IgnoreCase);
            Console.WriteLine(result);
        }
    }
}
1
0 / 0 / 0
Регистрация: 14.10.2018
Сообщений: 15
23.03.2019, 13:20  [ТС] 5
Спасибо большое.
Но предподователь сказал что через Regex пока что не делаем.
Я просто ещё на только начал изучать c#.
Но всё равно спасибо.
Если можно то пожалуйста без Regex.
Вроде можно Join использовать.
0
Эксперт JS
5400 / 3115 / 1507
Регистрация: 14.06.2018
Сообщений: 5,889
23.03.2019, 13:34 6
Лучший ответ Сообщение было отмечено ЛадиславКовач как решение

Решение

ЛадиславКовач, преподаватель у вас просто зверь.
Строка иммутабельная, возьмем как промежуточную площадку StringBuilder.

Добавлено через 9 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
using System;
using System.Text;
 
namespace Question2423920
{
    class Program
    {
        static void Main(string[] args)
        {
            var str = "В строке после         каждого слова  вставить         запятую";
            var sb = new StringBuilder();
 
            var afterLetter = false;
            for (int i = 0, len = str.Length; i < len; i++)
            {
                var c = str[i];
                if (c == ' ')
                {
                    if (afterLetter)
                    {
                        sb.Append(',');
                        afterLetter = false;
                    }
                }
                else
                {
                    afterLetter = true;
                }
                sb.Append(c);
            }
            if (afterLetter)
            {
                sb.Append(',');
            }
            var result = sb.ToString();
            Console.WriteLine(result);
        }
    }
}
1
0 / 0 / 0
Регистрация: 14.10.2018
Сообщений: 15
23.03.2019, 13:38  [ТС] 7
Цитата Сообщение от amr-now Посмотреть сообщение
ЛадиславКовач, преподаватель у вас просто зверь.
Строка иммутабельная, возьмем как промежуточную площадку StringBuilder.

Добавлено через 9 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
using System;
using System.Text;
 
namespace Question2423920
{
    class Program
    {
        static void Main(string[] args)
        {
            var str = "В строке после         каждого слова  вставить         запятую";
            var sb = new StringBuilder();
 
            var afterLetter = false;
            for (int i = 0, len = str.Length; i < len; i++)
            {
                var c = str[i];
                if (c == ' ')
                {
                    if (afterLetter)
                    {
                        sb.Append(',');
                        afterLetter = false;
                    }
                }
                else
                {
                    afterLetter = true;
                }
                sb.Append(c);
            }
            if (afterLetter)
            {
                sb.Append(',');
            }
            var result = sb.ToString();
            Console.WriteLine(result);
        }
    }
}
Цитата Сообщение от amr-now Посмотреть сообщение
ЛадиславКовач, преподаватель у вас просто зверь.
Строка иммутабельная, возьмем как промежуточную площадку StringBuilder.
Спасибо огромное, преподователь принял задание)
Безмерно благодарен)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.03.2019, 13:38

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Вставить запятую после каждого слова
1) Дано предложение. Вставить запятую после каждого слова. 2) Дан текст, имеющий вид:...

Вставить запятую после каждого слова
1) Дано предложение. Вставить запятую после каждого слова. 2) Дан текст, имеющий вид: d1+d2+...+dn...

Вставить после каждого слова в предложении запятую
Вставить после каждого слова в предложении запятую, а вконце предложения вставит точку.

Вставить после каждого слова в предложении запятую, а в конце предложения стоит точка
вставить после каждого слова в предложении запятую, а в конце предложения стоит точка.

После каждого слова в строке S1 вставить строку S2
Подскажите, пожалуйста, алгоритм и какие функции использовать

После каждого слова в строке W вставить строку S
Даны строки W и S После каждого слова в строке W вставить строку S


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.