Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/35: Рейтинг темы: голосов - 35, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 26.06.2013
Сообщений: 10

Сравнение string с пробелами в С#

26.06.2013, 20:55. Показов 6795. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сравнить две строки типа string?
Например, есть строка "123456" и строка "123456 ". Нужно сравнить их и чтобы функция которая эти строки сравнивала выдала True.
 Комментарий модератора 
Запрещено дублировать темы
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.06.2013, 20:55
Ответы с готовыми решениями:

чтение с пробелами String
Здравствуйте! Не давно только перешел с C++ на Java. Есть такая задача, может Вы ее уже встречали... Одним словом, нужно ввести n, а затем...

Сравнение string::iterator со string::reverse_iterator
Уважаемые форумчане, подскажите пожалуйста, как можно сравнить string::iterator и string::reverse_iterator, в частности что бы определить,...

String, который не дружит с пробелами
Добрый день. Имеется несколько вопросов: во-первых, почему в примере адреса выводятся только по одному слешу, тогда как я указал два?...

15
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
26.06.2013, 20:59
оператор == сравнивает строки
0
433 / 368 / 149
Регистрация: 06.08.2012
Сообщений: 961
26.06.2013, 21:03
C#
1
2
3
4
bool F(String s1, String s2)
{
   return s1 == s2;
}
0
0 / 0 / 0
Регистрация: 26.06.2013
Сообщений: 10
26.06.2013, 21:04  [ТС]
Цитата Сообщение от Jupiter Посмотреть сообщение
оператор == сравнивает строки
уже пробовал, но после такой проверки строки
s1 = "123456";
s2 = "123456 ";
не равны, а мне нужно чтобы они быди равны друг другу
0
433 / 368 / 149
Регистрация: 06.08.2012
Сообщений: 961
26.06.2013, 21:12
C#
1
2
3
4
5
6
7
8
9
10
11
12
using System;
 
class Programm
{
    static void Main()
    {
        String s1 = "123456";
        String s2 = "123456";
 
        Console.WriteLine(Equals(s1, s2));
    }
};
Добавлено через 41 секунду
Цитата Сообщение от Dionissius Посмотреть сообщение
s1 = "123456";
s2 = "123456 ";
лишний пробел в s2, вот и не равны.
0
0 / 0 / 0
Регистрация: 26.06.2013
Сообщений: 10
26.06.2013, 21:18  [ТС]
Извиняюсь, наверно немного не правильно объяснил, что мне нужно
Итак, у меня есть две строки
String s1 = "123456";
String s2 = "123456______";(во второй строке после цифр очень много пробелов, в первой - только цифры без пробелов)
Мне нужно сравнить эти две строки, но функция которая будет их сравнивать должна проигнорировать пробелы которые стоят в конце и выдать значение TRUE, то есть что они равны.
Также, строки такого типа:
String s3 = "This is string";
String s4 = "This is string______";
тоже должны быть равны.
*нижние подчеркивание - это пробелы
0
26.06.2013, 21:23

Не по теме:

C# плавно переехал в раздел C++?

0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
26.06.2013, 21:27
C#
1
2
3
string s1 = "123456";
string s2 = "123456 ";
if(s1 == s2.TrimEnd()) //...
1
0 / 0 / 0
Регистрация: 26.06.2013
Сообщений: 10
26.06.2013, 21:31  [ТС]
Цитата Сообщение от rangerx Посмотреть сообщение
C#
1
2
3
string s1 = "123456";
string s2 = "123456 ";
if(s1 == s2.TrimEnd()) //...
Да, спасибо огромное! То, что нужно!
0
432 / 433 / 93
Регистрация: 16.07.2012
Сообщений: 886
26.06.2013, 21:32
Метод String.TrimEnd() уберет лишние пробелы в конце строки:
C#
1
2
3
4
if (s1.TrimEnd() == s2.TrimEnd())
{
    // ...
}
Есть еще полезные методыTrimStart() (убирает пробелы в начале строки) и просто Trim() (убирает пробелы с обоих концов).
2
433 / 368 / 149
Регистрация: 06.08.2012
Сообщений: 961
26.06.2013, 21:34

Не по теме:

или так. лол :D


C#
1
2
3
4
5
6
7
8
9
10
11
12
using System;
 
class Programm
{
    static void Main()
    {
        String s1 = "123456";
        String s2 = "123456___";
 
        Console.WriteLine(Equals(s1, s2.Substring(0, s1.Length)));
    }
};
0
369 / 341 / 108
Регистрация: 12.02.2013
Сообщений: 653
26.06.2013, 22:06
так вроде получается
C#
1
2
3
4
5
6
7
8
9
10
            string s1 = "12345";
            string s2 = "12345     ";
 
            s2 = s2.TrimEnd();
 
            int i = String.Compare(s1, s2, StringComparison.CurrentCulture);
            if (i == 0)
                Console.Write("Строки равны");
            else
                Console.Write("Строки не равны");
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
27.06.2013, 08:13
Цитата Сообщение от Diman777 Посмотреть сообщение
String.Compare
Эму не нужно узнавать какая из строк больше, а какая меньше. Достаточно сравнить на равенство (==)
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
27.06.2013, 08:25
Цитата Сообщение от SeregaC++ Посмотреть сообщение
или так. лол
А вот так не стОит.
C#
1
2
        String s1 = "12345";
        String s2 = "123456___";
1
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 1
06.07.2019, 14:00
Настраиваемый вариант без порождения новых строк. Конечно, необходимо учитывать, что строки без пробелов семантически могут быть различны.

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
string str = "Hel lo world!";
string rts = "Hello\n   world!";
char[] skips = { ' ', '\n' };
 
if (CompareExcept(str, rts, skips))
    Console.WriteLine("The strings are equal.");
else
    Console.WriteLine("The strings are not equal.");
 
 
static bool CompareExcept(string str, string rts, char[] skips)
{
    if (str == null && rts == null) return true;
    if (str == null || rts == null) return false;
 
    var strReader = new StringReader(str);
    var rtsReader = new StringReader(rts);
    char nonchar = char.MaxValue;
 
    Predicate<char> skiper = delegate (char chr)
    {
        foreach (var skp in skips)
        {
            if (skp == chr) return true;
        }
        return false;
    };
 
    while (true)
    {
        char a = strReader.GetCharExcept(skiper);
        char b = rtsReader.GetCharExcept(skiper);
 
        if (a == b)
        {
            if (a == nonchar) return true;
            else continue;
        }
        else return false;
    }
}
 
class StringReader : System.IO.StringReader
{
    public StringReader(string str) : base(str) { }
 
    public char GetCharExcept(Predicate<char> compare)
    {
        char ch;
 
        while (compare(ch = (char)Read())) { }
 
        return ch;
    }
}
0
215 / 149 / 48
Регистрация: 28.12.2016
Сообщений: 716
06.07.2019, 14:34
Dionissius, просто Replace(" ",""); и потом сравнивать!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.07.2019, 14:34
Помогаю со студенческими работами здесь

Простой ввод строки с пробелами через string
Visual studio 2012, никак не могу ввести строку через string. У меня не работает вот этот фрагмент кода: #include &quot;stdafx.h&quot; ...

Фейл. Вывод string (getline) с пробелами. ООП
В простом варианте всё путём, но в готовом решении не пойми что. Понять, почему строка конструктора при создании объекта b не...

Записать строку с пробелами в string, с помощью потока.
Здравствуйте. Можно ли с помощью потока ввода записать строку с пробелами в тип string. Если да, то как.

Как на C++ ввести с консоли строку с пробелами в тип string?
Нужно создать программу определяющую является ли строка палиндромом(т.е. одинаково пишется как слева направо так и справа налево)....

В заданной строке заменить каждый пробел двумя пробелами используя string
В заданной строке заменить каждый пробел двумя пробелами используя string.


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru