Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
 Аватар для art_artemios
35 / 23 / 7
Регистрация: 23.12.2018
Сообщений: 101

Проверка строк в TextBoxe

29.08.2019, 16:37. Показов 1827. Ответов 3

Студворк — интернет-сервис помощи студентам
Собрал некую программу, которая пишет текстовый файл, и есть в ней ма-а-аленькая мелочь - никакая строчка текста не должна начинаться с трех запрещенных символов.

Растянул по форме TextBox и, как истинный джентльмен, добавил проверку текста, чтобы юзер не смог невзначай сохранить "кривой" файл.

Короче сделал такой вот цикор for(), который опасные символы убирает (вариант сырой, не учитывает что символы могут повторяться):

C#
1
2
3
4
5
6
for (int i = 0; i < TextBox.Lines.Length; i++) {
                if (TextBox.Lines[i].Length > 0 && (TextBox.Lines[i][0] == '@' || TextBox.Lines[i][0] == '$' || TextBox.Lines[i][0] == '&')) {
                    TextBox.Lines[i] = TextBox.Lines[i].Remove(0, 1);
                    Console.Beep();
                }
            }
Символы в начале строчки исправно обнаруживаются (консоль бибикает), но не исчезают.

Ну как так-то? "TextLine.Lines[] - возвращает или ЗАДАЁТ строку текста в боксе" - так говорила студия. Но че-то нифига она не задает. Подскажите, где я косячу?
Изображения
 
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.08.2019, 16:37
Ответы с готовыми решениями:

Scrolling в многострочном textboxe
Здравствуйте все! Подскажите пожалуйста как справиться со следующей проблемой: Есть многострочный текстбокс, вкотором...

Проверка строк массива на упорядочность
Доброго времени суток, задание: &quot;Дана матрица размера M x N(Рандомом). Найти минимальный среди элементов тех строк, которые упорядоченны...

Проверка двух строк на одно отличие
Как проверить две строки на то, отличаются ли они друг от друга на один символ ?

3
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
29.08.2019, 18:01
Лучший ответ Сообщение было отмечено art_artemios как решение

Решение

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
/// <summary>
/// Цензура
/// </summary>
/// <param name="lines">Строки</param>
/// <param name="smb">Запрещенные символы</param>
/// <returns></returns>
private string[] Censorship(string[] lines, string smb)
{
    string[] res = new string[lines.Length];
 
    for (int i = 0; i < lines.Length; i++)
    {
        res[i] = CensorshipLine(lines[i], smb);
    }
 
    return res;
}
 
/// <summary>
/// Цензура одной строки
/// </summary>
/// <param name="line">Строка</param>
/// <param name="smb">Запрещенные символы</param>
/// <returns></returns>
private string CensorshipLine(string line, string smb)
{
    foreach (var it in smb)
    {
        if (line[0] == it) { return line.Remove(0, 1); }
    }
 
    return line;
}
Использование;
C#
1
2
3
4
string[] ta = new string[] { "sanya", "alexey", "yan" };
var cs = "sy";
 
var res = Censorship(ta, cs);
1
Заблокирован
29.08.2019, 18:01
C#
1
2
3
4
5
6
    string[] a=textBox1.Lines;
            for (int i = 0; i < a.Length; i++)
            {
                ....
            }
            textBox1.Lines = a;
0
 Аватар для art_artemios
35 / 23 / 7
Регистрация: 23.12.2018
Сообщений: 101
29.08.2019, 19:40  [ТС]
Sanya_sa, благодарю. Как я понял, сначала нужно взять строку, потом зацензурить, потом вернуть.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.08.2019, 19:40
Помогаю со студенческими работами здесь

Как сделать Гиперлинки в TextBoxe?
Kak prosche sdelat', chtobi v TextBox-e avtomaticheski vudeljalis' Hyperlinki i emaili, kak naprimer v Worde i stanovilis' Objectami?

Как лучше организовать ввод дат в textboxe?
Как лучше организовать ввод дат в textboxe?

Как поставить фокус на TextBoxe рассположенном на листе (не на форме)?
Как поставить фокус на TextBoxe рассположенном на листе (не на форме)? На форме понятно TextBox1.SetFocus , а как на листе?

pochemu v textboxe (value) vivoditsya tolko pervoe slovo iz field of database
est v form textbox. v value dolzhno bit znachenie polya tablitzi. No v nyom neskolko slov, a vivoditsya tolko pervoe. Kak eto mozhno...

Проверка строк
Доброго времени суток. Подскажите как можно проверить в строке наличие 2 стрингов? К примеру есть строка &quot;Мама мыла раму&quot; и 2...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru