Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск в строке / 7 сообщений из 7, страница 1 из 1
19.08.2004, 15:19
    #32657093
sinAcos
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск в строке
Как бы осуществить поиск по строке средствами C# .NET
Необходимо найти начало и конец искомой строки в строке для поиска.
Функциональность элементарная - аналогичная sql запросу LIKE.
Может кто-нибудь сможет подсказать вариант по-оптимальнее? Буду очень благодарен.
...
Рейтинг: 0 / 0
19.08.2004, 15:24
    #32657118
YaNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск в строке
Смотри Методы объета String и регулярные выражения.
...
Рейтинг: 0 / 0
19.08.2004, 15:31
    #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
19.08.2004, 15:34
    #32657154
Sa
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
19.08.2004, 15:35
    #32657157
Sa
Sa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск в строке
Да соответственно если indexof = -1 то ничего не найдено.

Код: plaintext
 uid  =  S a
...
Рейтинг: 0 / 0
19.08.2004, 15:45
    #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
19.08.2004, 20:02
    #32657782
viper
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск в строке
Все просто LastIndexOf считывает с конца а значит аргумент startIndex должен быть равен input.Lenght - 1
_________________________________________________
Легче написать не правильную программу чем понять правильную (С) Alan Perlis
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск в строке / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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