Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.86/56: Рейтинг темы: голосов - 56, средняя оценка - 4.86
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94

String Replace

28.07.2013, 01:34. Показов 11960. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем! Бьюсь уже с этим вопросом 40 минут и не могу его решить. Решил заглянуть к вам, попросить помощи.
Мне нужно заменить слова "Do" и "Does" на "Hello" в textbox1
Вот мой код, но что-то не меняется.
C#
1
2
string s = textBox1.text;
textbox1.text = ((s).Replace("Do" + "Does" ,"Hello"));
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.07.2013, 01:34
Ответы с готовыми решениями:

Не правильная работа String.Replace
Добрый день. Никак не пойму, почему string str1 = "abcde"; string str2; string...

Почему string.Replace не всегда производит замену символов?
Подскажите почему string.Replace не всегда производит замену символов? В первом случае замена производится, а во втором нет. Спасибо. ...

Удваивание некоторых частей строк при повторном string.Replace()
content = mess.Replace(smiles.Trim(), "<img src=\"../Smiles/" + newpath + ".gif\" alt=\"" + smiles + "\" />"); mess =...

24
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 02:08
Не работает, потому что оно замещает не "Do" и "Does" по отдельности, а "DoDoes" вместе.
Оно замещает строку "DoDoes". Ясненько?

Добавлено через 11 минут
Попробуй сделать по очереди: сначала замени все ду-шки, а потом даз-шки
Или с оператором if поковыряйся. Но твой способ не прокатит, уж извини
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 02:16  [ТС]
Даже не представляю как это сделать. Если можешь напиши кодом плз

Добавлено через 3 минуты
Попробовал:
C#
1
2
3
4
string s = textBox1.textl
textBox1.text = ((s).Replace("Do", "Hello"));
Thread.Sleep(100);
textBox1.text = ((s).Replace("Does", "Hello"));
Тоже не работает
0
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
28.07.2013, 03:42
C#
1
2
string s = textBox1.text;
textbox1.text =Regex.Replace(s,@"Do\W|Does","Hello");
Как то так.. Писал с браузера
0
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 04:02
Deny_Doberman, ну на, на, держи
Самый простой способ:
C#
1
2
3
string s = textBox1.Text;
            s = s.Replace("Does", "Hello");
            textBox1.Text = s.Replace("Do", "Hello");
Добавлено через 2 минуты
Цитата Сообщение от Winhttp22 Посмотреть сообщение
Писал с браузера
оно и видно
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 04:13  [ТС]
C#
1
2
3
4
5
6
7
8
string[] StrMas = textBox1.Text.Split ' ';
string result = string.Empty;
for(int i = 0; i < StrMas.Length; i++)
{
     if(StrMas[i] == "Do" || StrMas[i] == "Does") StrMas = "Hello";
     result += StrMas[i] + ' ';
}
     textBox1.Text = result;
Писал с браузера
0
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 04:20
Цитата Сообщение от Deny_Doberman Посмотреть сообщение
Код C#
1
2
3
4
5
6
7
8
9
10
string[] StrMas = textBox1.Text.Split ' ';
string result = string.Empty;
for(int i = 0; i < StrMas.Length; i++)
{
* * *if(StrMas[i] == "Do" || StrMas[i] == "Does") StrMas = "Hello";
* * *result += StrMas[i] + ' ';
}
* * *textBox1.Text = result;
Писал с браузера
Что за извращение??
Я же тебе аккуратненько все уже сам написал!
1
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 04:24  [ТС]
А если допустим нужно будет 3 слова изменить, а не два, как ты сделаешь?
0
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 04:26
Процедура Replace автоматически находит ВСЕ вхождения данной подстроки, а не 2 или 3!
Попробуй и сам увидишь!
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 04:28  [ТС]
Я твой способ попробовал! А ты попробуй допустим слова Do, Does, Will, Shell изменить на Hello и напиши свой код
0
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 04:37
Цитата Сообщение от Deny_Doberman Посмотреть сообщение
Я твой способ попробовал! А ты попробуй допустим слова Do, Does, Will, Shell изменить на Hello и напиши свой код
Ну ничего себе!
string s = textBox1.Text;
s = s.Replace("Does", "Hello");
s= s.Replace("Will","Hello");
s = s.Replace("Shall","Hello");
textBox1.Text = s.Replace("Do", "Hello");
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 04:40  [ТС]
Ну где-то ты прав! У одной задачи есть дохрена решений
0
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 04:41
Цитата Сообщение от Deny_Doberman Посмотреть сообщение
А ты попробуй допустим слова Do, Does, Will, Shell изменить на Hello и напиши свой код
Ну ничего себе!

C#
1
2
3
4
5
string s = textBox1.Text;
            s = s.Replace("Does", "Hello");
s= s.Replace("Will","Hello");
            s = s.Replace("Shall","Hello");
            textBox1.Text = s.Replace("Do", "Hello");
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 04:42  [ТС]
У одной задачи может быть дохрена решений
0
 Аватар для Kordn
158 / 137 / 106
Регистрация: 18.05.2013
Сообщений: 289
28.07.2013, 04:46
Прости, браузер тормозит

Добавлено через 2 минуты
Да, у каждой задачи есть до хрена решений, но это не значит, что не нужно искать наиболее эффективное!

Добавлено через 1 минуту
В общем, надеюсь, помог в данном конкретном вопросе
Удачи!
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 06:39  [ТС]
Хорошо, спасибо, буду знать. Все работает
0
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
28.07.2013, 13:55
Цитата Сообщение от Kordn Посмотреть сообщение
Deny_Doberman, ну на, на, держи
Самый простой способ:
C#
1
2
3
string s = textBox1.Text;
            s = s.Replace("Does", "Hello");
            textBox1.Text = s.Replace("Do", "Hello");
Добавлено через 2 минуты

оно и видно
а зачем столько строк? Лол, вызывать два раза Replace

Добавлено через 6 минут
Это если мне нужно бы 5 слов заменить- нужно 5 раз вызывать?
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 17:22  [ТС]
Если таким кодом заменить хочешь допустим 5 слов то да, 5 раз писать нужно

Добавлено через 1 минуту
Хотя тут не один код не правильно, он будет заменять допустим слово Do на Hello он заменит, но, а если слово будет Doodl он его заменить на Helloodl -_- а мне нужно чтобы такого не было
0
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
28.07.2013, 17:28
Deny_Doberman, 5 раз... 10 раз... Не знаю, по мне - это уже признак криворукости.
Я ведь тебе писал код с регуляркой. Чем не подходит?
0
 Аватар для Deny_Doberman
1 / 1 / 1
Регистрация: 16.07.2012
Сообщений: 94
28.07.2013, 17:47  [ТС]
Твой код самый правильный! Только немного подправить нужно
C#
1
2
Regex r = new Regex(@"\b[Hh]e\b");
text = r.Replace(text, "Edgar");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.07.2013, 17:47
Помогаю со студенческими работами здесь

Создайте класс Animal. Добавьте поля string Name, string Kind, string Areal, int Population
Создайте класс Animal. Добавьте поля string Name, string Kind, string Areal, int Population. Создание объектов может происходить как без...

Создайте класс Animal. Добавьте поля string Name, string Kind, string Areal, int Population
Здравствуйте! По C# есть задачка, с которой я так и не разобрался :( Задача: Создайте класс Animal. Добавьте поля string...

Как использовать String.Substring(string, string)?
Есть у String метод Substring(int, int), но он принимает только числа. Я видел на видео, что можно парсить по словам. Например: string...

Regex.Replace
Привет всем! Я парсю пользователей 1 сайта и я вроде нашел между какими тэгами заключены пользователи но дело в том что не только...

Text.Replace
Есть текст: Мне нужно заменить в нем &quot;/n&quot; на знаки новой строки (в общем, чтобы все начиналось с новой строки) Делаю так: ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru