powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск в строке
7 сообщений из 7, страница 1 из 1
Поиск в строке
    #32657093
sinAcos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как бы осуществить поиск по строке средствами C# .NET
Необходимо найти начало и конец искомой строки в строке для поиска.
Функциональность элементарная - аналогичная sql запросу LIKE.
Может кто-нибудь сможет подсказать вариант по-оптимальнее? Буду очень благодарен.
...
Рейтинг: 0 / 0
Поиск в строке
    #32657118
YaNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотри Методы объета String и регулярные выражения.
...
Рейтинг: 0 / 0
Поиск в строке
    #32657143
vooo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
String.IndexOf Method
Reports the index of the first occurrence of a String, or one or more characters, within this instance.
...
Рейтинг: 0 / 0
Поиск в строке
    #32657154
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавлю по indexof конкретнее:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
string str = "Sample Text";
string findText = "ample";
int indexof = str.IndexOf(findText);
if(indexof >= 0) 
{
     console.WriteLine("IndexOf = {0}", indexof.ToString());
}

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Поиск в строке
    #32657157
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да соответственно если indexof = -1 то ничего не найдено.

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
Поиск в строке
    #32657183
sinAcos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не получается вот что: я хочу полчить самую ближнюю строку ". " слева от найденого куска текста.
Допустим есть текст.
string input = "Светало. Был ясный день.";
И строка для поиска.
string search = "Был";

По идее так можно получить позицию ". " после Светало.

int ind = input.ToLower().IndexOf(search.ToLower());

if (ind >= 0)
{
int ind1 = input.LastIndexOf(". ", 0, ind);
}

А он ручается: Count must be positive and count must refer to a location within the string/array/collection. Parameter name: count.
Ругается на строку int ind1 = input.LastIndexOf(". ", 0, ind);
Я не понимаю в чем дело...
...
Рейтинг: 0 / 0
Поиск в строке
    #32657782
viper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все просто LastIndexOf считывает с конца а значит аргумент startIndex должен быть равен input.Lenght - 1
_________________________________________________
Легче написать не правильную программу чем понять правильную (С) Alan Perlis
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск в строке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]