«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript



Игра «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих



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

Но прежде следует сказать следующее. Регулярные выражения существуют не только в Javascript.

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

По этой ссылке можно скачать шпаргалку по регулярным выражениям.



Регулярное выражение - {n} - ровно n

Вернемся к примеру из предыдущей заметки, где при помощи регулярного выражения \d, которое обозначает любую цифру от 0 до 9, мы искали последовательность из шести цифр. Для этого пришлось регулярное выражение \d указать шесть раз.

Теперь, используя шпаргалку по регулярным выражениям, можно оптимизировать javascript-код в примере из предыдущей заметки.

Фрагмент кода

<script type="text/javascript">

var index = prompt("Введите свой почтовый индекс из шести цифр");
var regular = /\d{6}/; /* Регулярные выражения: \d и {6} - последовательность из шести цифр */
var result = index.search(regular); /* Ищем шаблон в строке */

/* Далее составляем условие для проверки... */
if (result == -1)
{
document.write("Вы неверно ввели индекс - он должен состоять из шести цифр");
}
else
{
document.write("Ваш индекс " + index);
}

</script>

Результат

Итак, в этом примере мы оптимизировали javascript-код за счет использования регулярного выражения \d{6}:

  • Где \d обозначает цифру от 0 до 9.

  • А {6} обозначает ровно 6 (в фигурных скобках может быть указано любое число).

  • То есть запись \d{6} идентична \d\d\d\d\d\d.

Регулярное выражение - ^ - Начало строки

Подробнее рассмотрим предыдущий пример.

Допустим, пользователь корректно укажет почтовый индекс, то есть подряд введет шесть цифр, но при этом сначала напишет пару слов:«Мой индекс 394000».

Попробуйте это сделать и в результате увидите всю строку: «Мой индекс 394000».

А что если нам нужен только почтовый индекс?

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

Здесь нам поможет регулярное выражение ^, что означает Начало строки.

Фрагмент кода

<script type="text/javascript">

var index = prompt("Введите свой почтовый индекс из шести цифр");
var regular = /^\d{6}/; /* Регулярные выражения: ^ - начало строки, \d и {6} - последовательность из шести цифр */
var result = index.search(regular); /* Ищем шаблон в строке */

/* Далее составляем условие для проверки... */
if (result == -1)
{
document.write("Вы неверно ввели индекс - он должен состоять из шести цифр");
}
else
{
document.write("Ваш индекс " + index);
}

</script>

Результат

Теперь какой-либо текст, расположенный перед почтовым индексом приведет к тому, что в результате мы получим -1, то есть увидим: «Вы неверно ввели индекс - он должен состоять из шести цифр».

Так работает регулярное выражение начала строки.

Регулярное выражение - $ - Конец строки

Доработаем до конца этот пример.

Допустим, пользователь снова корректно укажет почтовый индекс, только теперь напишет пару слов после него: «394000 - Мой индекс». Или же укажет не 6, а 7 или более цифр.

При этом регулярное выражение ^ - Начало строки уже не поможет. Для таких случаев существует другое регулярное выражение $ - символ доллара, что означает Конец строки.

Фрагмент кода

<script type="text/javascript">

var index = prompt("Введите свой почтовый индекс из шести цифр");
var regular = /^\d{6}$/; /* Регулярные выражения: ^ - начало строки, \d и {6} - последовательность из шести цифр, $ - Конец строки */
var result = index.search(regular); /* Ищем шаблон в строке */

/* Далее составляем условие для проверки... */
if (result == -1)
{
document.write("Вы неверно ввели индекс - он должен состоять из шести цифр");
}
else
{
document.write("Ваш индекс " + index);
}

</script>

Результат

Теперь какой-либо текст или большее число цифр, расположенных как до, так и после почтового индекса приведет к тому, что в результате мы получим -1, то есть увидим: «Вы неверно ввели индекс - он должен состоять из шести цифр».



Читайте также...



Отзывы и комментарии:

Комментариев нет...

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


Объект String
Регулярные выражения - Начало и Конец строки
2204
Свойство length - Число символов в строке
2997
Практическая задача - Свойство length
1376
Регистр строки - toUpperCase и toLowerCase
23672
Практическая задача - Методы toUpperCase и toLowerCase
1529
Поиск совпадений в строке - Методы indexOf и lastIndexOf
2950
Практическая задача - Методы indexOf и lastIndexOf
1494
Метод slice - Копирование из строки
2796
Практическая задача - Метод slice
1542
Методы charAt и charCodeAt - Возвращаем символ и КОД символа
10049
Практическая задача - Методы charAt и charCodeAt
2854
Метод search - Регулярные выражения
2199
Практическая задача - Регулярные выражения
1300
Метод match - Возвращает массив из совпадений - Глобальный поиск g
3185
Поиск сайта в строке
1721
Практическая задача с кредитной картой
2050
Метод replace - Замена совпадений
4504
Практическая задача - Метод replace
2067
Метод trim в - Удаление пробелов в начале и конце строки
6086
Метод substring - Извлекает часть строки
1094
Метод split в JavaScript - Разделитель строки
2032

Тематические публикации
Популярные заметки
Последние заметки