powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проверка правильности строки с путем
25 сообщений из 43, страница 1 из 2
Проверка правильности строки с путем
    #39764198
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотелось бы:

юзер вводит руками путь (локальный или сетевой), хотелось бы проверить является ли эта строка путём, без физического доступа к пути.

Регулярное выражение?
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764211
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256kРегулярное выражение?да. Только нафиг надо это делать на ввод каждой буквы и копи пасты.
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764246
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123256kРегулярное выражение?да. Только нафиг надо это делать на ввод каждой буквы и копи пасты.

почему каждой буквы - после ввода всего пути.
Например, юзер вводит путь в некие сеттинги, можно проверить физически наличие пути, но это длинная операция, хотелось бы в первом приближении, если путь явно кривой синтаксически - дать ошибку.
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764264
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256kюзер вводит путь в некие сеттингивыбирать в диалоге проще. Зачем заставлять писать путь с завязанными глазами?
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764265
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256k,
2. Это не мыло и не телефон для такой валидации.
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764289
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764298
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
6.
7.
private static readonly string IllegalChars = @"^(?:[\w]\:|\\)(\\[a-z_\-\s0-9\.]+\\?)+$";
public static bool ValidatePath(string path)
{
	if (string.IsNullOrWhiteSpace(path)) return false;
	return Regex.IsMatch(path, IllegalChars,
		RegexOptions.CultureInvariant | RegexOptions.IgnoreCase);
}

Не эталон, но проверит правильность локальных и сетевых петуй
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764349
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123256kюзер вводит путь в некие сеттингивыбирать в диалоге проще. Зачем заставлять писать путь с завязанными глазами?

ты слишком прямолинеен, не везде, где есть c# может быть диалог
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764356
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes
Код: c#
1.
2.
3.
4.
5.
6.
7.
private static readonly string IllegalChars = @"^(?:[\w]\:|\\)(\\[a-z_\-\s0-9\.]+\\?)+$";
public static bool ValidatePath(string path)
{
	if (string.IsNullOrWhiteSpace(path)) return false;
	return Regex.IsMatch(path, IllegalChars,
		RegexOptions.CultureInvariant | RegexOptions.IgnoreCase);
}

Не эталон, но проверит правильность локальных и сетевых петуй

именно то, что мне надо, но вот вопрос:

\\d-comp11\мои файлы - false
\\d-comp11\My Files - true
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764361
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
регулярку поправь для русских буковок
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764370
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneрегулярку поправь для русских буковок

это-то можно сделать, то как быть с французскими? немецкими? и т.д.
пытаться все запихнуть в регулярное выражение?
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764371
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вам виднее, для меня это вообще абсурдный код
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764373
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
допилите Reg выражение просто, оно не поддерживает русские буквы
вроде как \w включает символы допустимые в пути, но всё равно в этой проверки кое каких символов может нехватать.
можно как вариант проверять не на допустимость символов, а не допустимость. то есть искать символы запрещенные в путях, это будет более верный путь.
исправлено под ваши хотелки:
@"^(?:[\w]\:|\\)(\\[\w_\-\s\.]+\\?)+$"
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764379
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256kты слишком прямолинеен, не везде, где есть c# может быть диалогесли я прямолинеен как хирург, то ты неопытен в постановке как джун.
У тебя консоль без OpenDialog?
Что мешает проверить реальный путь?
Неужели "не везде есть компьютер"?
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764381
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesискать символы запрещенны+1
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764383
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneвам виднее, для меня это вообще абсурдный кодты прямолинеен). Надо дипломатичнее)
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764389
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,
с чего вы взяли, что вводимый путь физически доступен и существует возможность проверки его существования,
нигде в постановке этого не сказано, в самой проверке нет ничего плохого, она избыточно, но в этом нет ничего плохого.

тоже самое, когда проверяют файл на существование перед открытием и кидают исключение.. какой в этом смысл, если файл при открытии кинет исключение, если его не существует? такой пример проверки хуже, чем делает автор, возможно автор просто делает валидатор формы и хочет отображать поля, которые имеют невалидное значение
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764396
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я думаю ТС хочет конфиги чекать в своём сервисе, которые кто-то в онлайне портит
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764398
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поэтому такую проверку считаю бессмысленной, надо контролировать исключение при доступе к файлу/директории по указанному пути
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764402
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneпоэтому такую проверку считаю бессмысленной, надо контролировать исключение при доступе к файлу/директории по указанному пути
такая проверка не имеет смысл при непосредственном доступе к файлу или пути, но если это просто значение на форме, проверка вполне имеет смысл.
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764405
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,
Почитай ответ Konst_One
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764409
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesона избыточно, но в этом нет ничего плохого.вот я и говорю ИЗБЫТОЧНО.
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764428
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123256kты слишком прямолинеен, не везде, где есть c# может быть диалогесли я прямолинеен как хирург, то ты неопытен в постановке как джун.
У тебя консоль без OpenDialog?
Что мешает проверить реальный путь?
Неужели "не везде есть компьютер"?

Прямолинеен, как херурк задостанов

Кто сказал, что у меня консоль?
" Что мешает проверить реальный путь?" :
Заратустра не позволяет!

1. можно, но только в частности
2. это долго
3. может не быть прав
4. может не быть прав в этот момент
5. пример: юзер вводит путь скриптом в базу, тем более в базу в туче.
6. ...

Пэдро, тщательнее надо бы

Вопрос о шарповой функции, на вход которой идте строка с путем, а она отвечает, путь это или нет, хотя бы приблизительно.
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764451
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
^(?:[a-z]\:|\\)(\\[\w\-\s\.]+\\?)+$


думаю вот такой вариант будет наилучшим вариантом.
на счет названий дисков, если мне не изменяет память, то в DOS после Z диска шел диск AA, AB,AC и т.д. На счет windows не уверен, но думаю это не очень критично
...
Рейтинг: 0 / 0
Проверка правильности строки с путем
    #39764460
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256k,
Ты работай и не отвлекайся. Даже с херовой постановкой задачи которуюСамСебеПридумал.
...
Рейтинг: 0 / 0
25 сообщений из 43, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проверка правильности строки с путем
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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