Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
sysrepos
31 / 31 / 15
Регистрация: 08.08.2013
Сообщений: 289
Записей в блоге: 1
#1

Что означают эти символы в регулярном выражении? - C#

17.05.2016, 11:37. Просмотров 217. Ответов 3
Метки нет (Все метки)

Добрый день!
есть регулярное выражение, которое проверяет правильность почтового адреса (один из нагугленных вариантов):


C#
1
2
string e_mail = "name@gmail.com";
string pattern="[.\\-_a-z0-9]+@([a-z0-9][\\-a-z0-9]+\\.)+[a-z]{2,6}";

что в нем означают символы?
.\\
\\
\\.

string expr ="[.\\-_a-z0-9]+@([a-z0-9][\\-a-z0-9]+\\.)+[a-z]{2,6}";
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2016, 11:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что означают эти символы в регулярном выражении? (C#):

Что не правильно в этом регулярном выражении - C#
static string pattern = @"({1,1}){2,9}+_({1,1}){2,9}"; Regex regex = new Regex(pattern); на строку "Regex regex = new...

Что может быть не так в регулярном выражении - C#
public void HtmlRegex(string html) { string pattern = @"+,\W+,\W+,\S+"; Regex rgx = new...

Что означают эти строки? - C#
Скажите, пожалуйста, что означают эти строки: if (a >> 28 != 5) { b = a & 0x0fffffff; }

Разобраться в регулярном выражении - C#
"(?<=<img+?src=\" )+" вон оно я не могу понять что значит и \" )+ ...

Тире и дефис в регулярном выражении - C#
Приветствую! Задача: Найти в строке определенные "недопустимые" символы, которые не входят в список допустимых. Допустимые это: буквы,...

Проверка на регистр в регулярном выражении - C#
Имеется форма в которой richTextBox и Button при нажатии на Button создается массив string keywords = { "INSERT", "INTO", "DELETE",...

3
diadiavova
1842 / 978 / 270
Регистрация: 11.04.2015
Сообщений: 1,814
Записей в блоге: 31
17.05.2016, 11:45 #2
Двойной слеш во всех случаях означает просто слеш, поскольку здесь регулярка вписана прямо в строковый литерал, а в нем слеш как и в регулярный выражениях используется для экранирования спецсимволов. Можно поставить собачку перед литералом и заменить двойные слеши одинарными. Ну, а так - точка в первом случае -обозначает любой символ, слеш в нем же - предшествует минусу, что означает, что этот минус должен интерпретироваться именно как минус. Во втором случае - это слеш, который, как и в первом, экранирует минус. В третьем случае слеш экранирует точку, что означает, что она должна интерпретироваться как точка, а не как любой символ(что имело место в первом случае)
1
Zer0_CooL
15 / 15 / 2
Регистрация: 21.12.2011
Сообщений: 72
17.05.2016, 11:56 #3
Цитата Сообщение от sysrepos Посмотреть сообщение
[.\\-_a-z0-9]
В квадратных скобках указаны допустимые символы:
. точка
\- знак минус (тире) -
_ знак подчеркивания
буквы от a до z
цифры от 0 до 9

Возможно так будет немного понятней:
C#
1
string pattern = @"[.\-_a-z0-9]+@((?:[a-z0-9][\-a-z0-9]+\.)+)[a-z]{2,6}";
1
sysrepos
31 / 31 / 15
Регистрация: 08.08.2013
Сообщений: 289
Записей в блоге: 1
17.05.2016, 12:13  [ТС] #4
ясно, спасибо
0
17.05.2016, 12:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2016, 12:13
Привет! Вот еще темы с ответами:

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

.NET 4.x Что не так в регулярном выражении! - C#
Нужно чтобы при вводе пароля можно было вводить только латинские буквы и цифры, в приведенном ниже коде проходят и русские буквы тоже....

Проверка условия в регулярном выражении - C#
есть строка текста "\r\n:20: CRED\r\n:23:123400" есть регулярное выр.: "(\\r\\n:20: (?<p20>{4}))(?(если p20=CRED)(?<p23>{6}))" мне...

Как экранировать скобки в регулярном выражении - C#
Добрый день! Ищу через регулярные выражения: if (Regex.IsMatch(lineToCheck, "(?:|^)" + key + "(?:|$)")) При этом переменная...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.