Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Web-программирование - это просто!


Новое на сайте Программирование - это просто! (www.easyprog.ru):

В платном разделе

В бесплатном разделе

WEB-Программирование: "Java Script(JS): Регулярные выражения. Метасимволы. Продолжение"

 

 

Продолжаем тему метасимволов. Символ "^". Для изучения возьмем пример из прошлого урока. Заменим в нем регулярное выражения, которое там есть на вот это:

/^[w]$/

 

Программа посчитает корректным только выражение, состоящее из одной буковки "w". Теперь попробуем вот это:

 

/[w]$/

 

Теперь корректным будет все то, что заканчивается на буковку "w". То есть, в первом случае у нас выражение должно было начинается на "w", а во втором на любую букву, цифру или символ. Но в обоих случаях кончаться должно на "w", так как после него стоит символ "$" - конец строки. Уберем его - и у нас получиться, что строка может кончаться на любой символ.

Следующий символ "\b" - граница слова. Сделаем, например, такое регулярное выражение:

/[w]\b/

 

Оно пропустит любые выражения, в котором есть хоть одно слово, которое оканчивается на w. Словом считаются символы, которые отделены от других символов пробелами.

Символ "\B" - обозначает, что это не граница слова. Вот такое, например, выражение означает, что символ "w" должен быть где то в середине или в начале слова, но никак не в конце.

/[w]\B/

 

Теперь поговорим о метасимволах, задающих количество повторов. В регулярных выражениях через вот такие фигурные скобки {} можно задать количество символов. Формат такой {n,m} - где n - минимальное количество символов, m - максимальное. Например, вот такое вот выражение:

 

/^[ws]{3,5}$/

 

позволит ввести от трех до пяти символов, каждый из которых должен быть либо "w", либо "s". Если m опущен, то стоит запятая после n:

 

/^[ws]{3,}$/

 

то это означает не менее n символов. Если после n - нет запятой:

/^[ws]{3}$/

 

то это означает ровно n - символов.

Знак "+" эквивалентен {1,} (один или больше символов), "*" - {0,} (хоть сколько или ни одного), "?" - {0,1} (один или ни одного)

 


В избранное