Хостинг, который может больше
19.12.2009

JavaScript видеоурок #6

Видеоурок JavaScript №6 Регулярные выражения

В сегодняшнем видеоуроке, уважаемый читатель, я познакомлю вас с понятием, синтаксисом и принципами работы с регулярными выражениями. Это очень интересная тема, которая применима не только в JavaScript, но и в PHP.

Посредством регулярных выражений производится анализ текстовых строк и выборка из анализируемого требуемой части.

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

После просмотра видео конструкция типа /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/ перестанет быть для вас загадочным набором символов, я очень на это надеюсь :)

Ну что же, приступаем?

Видеоурок на сервисе RuTube:




Видеоурок на сервисе YouTube (первая часть):

Видеоурок на сервисе YouTube (вторая часть):

Видеоурок на сервисе YouTube (третья часть):

Как и всегда видео в лучшем качестве можно скачать с Deposit Files (в этом случае автор заработает несколько центов) или с Народного.Диска (тогда автор ничего не заработает) *.wmv, 50.1 МБайт.

Исходники, которые демонстрировались во время видеоурока, можно скачать с Народного.Диска (*.zip, 0,9 КБайт).

С уважением, Андрей Морковин.


Если статья вам понравилась и вы не хотите пропустить свежие публикации, то подписывайтесь на RSS-ленту или получайте обновления сайта на эл. почту.


Похожие материалы:


Отзывов: 39 на «JavaScript видеоурок #6»

  1. papalev, 19.12.2009 в 08:07

    УУУУУУУУУУУраааааа дождался наконецто спс и большой вам поклон толька у вас JavaScript на русском языке )))

  2. papalev, 19.12.2009 в 08:09

    Почемубы вам не сделать видеокурс по JavaScript для начинающих как PHP & MaSQL Для начинающих от Евгения Попова Спрос будет бешаный ну ябы точна купил !!)) но не останавливайте одиночные уроки они супер спс ещо разок!

    • Андрей Морковин, 19.12.2009 в 23:26

      В своей совокупности одиночные видеоуроки представляют собой ни что иное как полный видеокурс по JavaScript.

  3. papalev, 19.12.2009 в 08:12

    А мона вам идею урока предложить для урока
    ну меня вапрос этот терзаит «Как сделать при добовлении комментов сделать редактирование текста и смайлы» я примерно знаю как это сделано блогодаря вашим урока но тока в теории ещо не пытался хотелосьбы научится наверника поможите )) ???

  4. Dimox, 19.12.2009 в 13:44

    Спасибо за урок. Такой вопрос — я для проверки через регулярное выражение использую вот такую конструкцию (подсказал программист):

    if (/^\s*$/.test(text)) { }

    В чем разница между .test и .search? Какую лучше из них использовать и почему?

    • Андрей Морковин, 19.12.2009 в 23:23

      Привет, Дмитрий!

      Метод test() возвращает true или false, в зависимости от исхода проверки на соответствие текста и регулярного выражения. Именно этот метод описан в документации по регулярным выражениям JavaScript.

      Метод search() возвращает позицию совпадения и, по логике вещей, меньше подходит для описанного случая, но прекрасно справляется с поставленной задачей.

      Есть еще более функциональный (но и более медленный) метод match(), который может возвращать сами символы, совпавшие с регулярным выражением.

      Короче говоря, для обычной проверки на соответствие регулярному выражению больше подойдет метод .test().

      • Dimox, 20.12.2009 в 11:01

        Привет =) Понятно, спасибо за объяснение. Значит буду продолжать использовать .test().

  5. Voron, 19.12.2009 в 13:51

    Прикольный урок! Спасибо!

  6. san4izl, 19.12.2009 в 17:40

    Спасибо за урок. А на счет уроков по PHP & MySQL для начинающих было бы очень даже не плохо! Надеюсь после серии уроков по яваскрипту, последуют именно уроки по PHP & MySQL. Еще раз спасибо за ваши уроки!

    • Андрей Морковин, 19.12.2009 в 23:29

      Я думаю, что дойдет время и до PHP с MySQL :)

      • sssssss, 20.12.2009 в 00:37

        Тоже бы очень хотел уроки по PHP и MYSQL

      • papalev, 20.12.2009 в 09:07

        Да я согласен я бы хлтел пополнить сваю капилку знаний в PHP и послушать умного человека)

  7. Дмитрий, 20.12.2009 в 01:04

    Андрей Морковин Спасибо Вам огромрое, за ваш труд и знания, которыми Вы делитесь с нами!!!!!!!!
    Вы просто Бог!!!
    Это лучшее что я нашол в сети за последнй год!!!
    Ваш Видео курс просто спасение для многих пользователей……
    Спасибо ещо раз!!!!!

  8. Асушник, 21.12.2009 в 20:21

    Объясните п-та, существует такое понятие как api: google api, yandex api, vkontakte api. Между ними есть какая-нибудь разница или у них один стандарт? Api связано с javascript? Недавно открылся Google Wave, там можно прикручивать свои api приложения, хотел бы научиться, случаем вы не будете в будущем видеокурсы по api писать?
    Спасибо.

  9. Sergey, 23.12.2009 в 02:46

    Было бы неплохо в дополнение к видео оформить уроки еще в текстовом виде. Как альтернативу. Мне, например, все-таки проще усваивать читаемый материал. К тому же нужный фрагмент в тексте ищется гораздо быстрее, чем при прокручивании ролика.

    Думаю, многие пользователи одобрили бы такой вариант.

  10. Асушник, 24.12.2009 в 11:27

    никто в api не разбирается? см предыдущий пост

    • Андрей Морковин, 24.12.2009 в 14:23

      Вам нужно почитать мануаль, по API Яндекса например и сразу станет все понятно:

      http://api.yandex.ru/maps/

      В принципе, API — это набор функций, позволяющий реализовать ту или иную задачу.

  11. Elshan, 22.01.2010 в 23:12

    Sps vam bolshoe,vse super…napishite kak otpravit ix na server esli ne trudno….esli est v predudishex urokax to sorry.eshe ne posmotrel

  12. Илларион, 27.01.2010 в 18:36

    Мне понравилось! Узнал для себя, что такое регулярные выражения. Хотелось бы ещё разобрать jQuery, но это как идея.

  13. Илларион, 27.01.2010 в 21:16

    СпасиБо за ссылку. И можно вопрос немного не по теме? Как в camtasia studio при записи сделать подчёркивание карандашом, как у вас на видео? Я думал-думал. В Интернете искал-искал — не нашёл. Помогите, please. С уважением, Илларион

  14. Руслан, 21.02.2010 в 18:50

    Спасибо Андрей!
    …честно признаться давно хотел разобраться с регулярными выражениями, потому как очень нужно было написать скрипт по работе со строками, тогда в итоге от регулярных выражений отказался, выбрал обходной «ОЧЕНЬ ГЕМОРОЙНЫЙ» путь, потому как от одного вида строки RegExp меня бросало в ужас!
    Пробовал почитать мануал, но МОЗГ начинающего и неопытного web-разработчика всячески отвергал любые упоминания о рег.вырах!
    В javascript и вообще в программировании Я новичок, за 24 минуты просмотра вашего урока, впитал все как ГУБКА!) и тут же за 15 минут написал скрипт проверки е-майла для своего сайта!)
    …в который раз восхищаюсь вашим умением преподносить сложные вещи в легкоусваимой и понятной форме!
    …ПРИЛЮДНО ВЫРАЖАЮ ВАМ БОЛЬШОЕ СПАСИБО от имени ВСЕХ НАЧИНАЮЩИХ WEB-РАЗРАБОТЧИКОВ! ..))

  15. Never Lex, 11.05.2010 в 14:47

    Да уж. Писать и понимать регулярки это непросто. При изучении PHP с ними ознакомился, поэтому этот урок был для меня очень простым.

  16. Web, 09.07.2010 в 14:53

    Здравствуйте, Андрей! Скажите пожалуйста, на ваш взгляд, регулярными выражениями лучше пользоваться в JS или PHP, скажем, для проверки полей на корректность ввода данных перед отправкой на сервер или лучше сделать фильтрацию на обоих языках, чтобы в случае отключения JS в браузере пользователя информация всё-равно фильтровалась бы по средствам php?? Наверное бред написал, но думаю вы поймёте что я хотел сказать.

  17. Oksman, 17.08.2010 в 23:01

    спасибо огромное, Андрей! Очень понятно излагаетесь!
    тоже никак не мог разобраться в регулярных выражениях, на пхп пишу уже относительно хорошо, но как-то все обходился обычными функциями для проверки чего-либо! сейчас за пол часа все освоил.

  18. p1w3t_9_101, 05.01.2011 в 18:20

    Не проверял, но если search() возвращает позицую, с которой начинается рег выражение, то например в строчке ’9lox@ya.ru не возратит ли он 2, что не равно -1?

  19. Женя, 03.06.2011 в 10:20

    Спасибо за прекрасный и понятный урок.. Но хотелось бы уточнить. Если мне не показалось, в том месте на 17 минут 09 секунд выделен не совсем верный диапазон при объяснении рег.выражения и дальше пояснения идут со смещением на одно «слово»; ‘tri’ было выделено лишним и попадает под конструкцию следующего описываемого рег.выражения. Если я ошибся, сорри за беспокойства..

    • Женя, 03.06.2011 в 10:35

      Похоже ([\.-]?\w+)* так и (\.\w{2,4})+ выполняют одинаково для соответствия условиям .tri

  20. Uppix, 06.09.2011 в 14:29

    Спасибо, интересные уроки!
    Андрей, во втором видео JavaScript #6-2 часть регулярки выглядит как

    ..[a-zA-Z0-9_]){0,}(\.[a-zA-Z0-9_]{2,4}){1,}$/

    а ее сокращенный вариант
    ..\w+([\.]w{2,4})+$/

    это действительно правильно, или в первом варианте
    после [a-zA-Z0-9_] не хватает {1,}

    т.е.
    ..[a-zA-Z0-9_]{1,}){0,}(\.[a-zA-Z0-9_]{2,4}){1,}$/

    p.s. спасибо за Кохану на Хабре :)

  21. Павел, 26.12.2011 в 02:53

    Спасибо, очень познавательный урок!
    Хотел сделать проверку на ввод имени чтобы вводили только буквы, и НЕ могли ввести цифры. Вот код. может кто поможет найти ошибку?

    function f(){
    var a = /[^0-9]/;
    var name = document.getElementById(‘name’);
    var verno = document.getElementById(‘verno’);
    var neverno = document.getElementById(‘neverno’);

    if(name.value.search(a) !== -1){
    verno.style.display = ‘inline’;
    neverno.style.display = ‘none’;
    document.form[0].submit();
    }

    else {
    verno.style.display = ‘none’;
    neverno.style.display = ‘inline’;
    }
    }

    А это кусок HTML

    Имя

    Верно :)
    Неверно!

    и ещё вопрос — можно ли вводить ТОЛЬКО РУССКИЕ буквы? т.е. запретить вводить английские?

  22. Павел, 26.12.2011 в 02:53

    жаль html код фильтруется…. ((

  1. Ваше блоговодие № 14 | Блог Оксы о деньгах в сети — 25.12.2009 в 23:13

  2. Создаем модель в Kohana - Видеоурок — 28.04.2011 в 23:01

  3. Решение проблемы постраничной навигации категорий в Wordpress — 20.05.2011 в 14:01

  4. Маршрутизация в Kohana 3 - Видеоурок — 31.08.2011 в 09:38

Ваш отзыв