применение регулярных выражений javascript

Регулярные выражения в JavaScript

Опубликовано: 01.02.2015 07:33
Просмотров: 3482

Регулярные выражения в JavaScript - мощный инструмент, который позволяет при минимуме кода сделать максимум для обработки данных

Основа регулярных выражений в JacaScript

Скажу сразу, что регулярные выражения безумно хороши, они позволят заменить кучу кода на небольшую строчку. Но у регулярок есть минус: они трудные для восприятия и изучения. Вот пример регулярного выражения, которое удаляет точки и запятые в строке:

1
2
3
4
5
6
<script language="JavaScript"> 
  var str = "Удалим, запятые. и, даже. точки. в, строке" 
  var reg_exp = /[,.]/g 
  var res = str.replace(reg_exp, "") 
  document.write(res) 
</script>

Запутал? А теперь давайте по порядку.

Регулярное выражение в JavaScript, как и в любом другом языке, представляет из себя конструкцию, которая обрабатывает строку текста. Рассмотрим основные понятия в регулярных выражениях:

  • модификатор - это специальное средство для "инструктирования" регулярок;
  • метасимвол - команда для языка регулярных выражений.

Для того, чтобы написать регулярное выражение нужно просто значение переменной обрамить слешами:

1
var reg_exp=/регулярное_выражение/

Создадим простейший скрипт, который заменит все буквы "s" на заглавные "S".

1
2
3
4
5
6
<script language="JavaScript"> 
  var str = "site seo-Love" 
  var reg_exp = /s/ 
  var res = str.replace(reg_exp, "S") 
  document.write(res) 
</script>

Результатом будет строка "Site seo-Love". Как видим заменилось только первое вхождение. Это нас не устраивает, давайте заменим все вхождения символа "s". Для этого используем модификатор "g", который укажет на то, что поиск не нужно прекращать после нахождения первого вхождения.

1
2
3
4
5
6
<script language="JavaScript"> 
  var str = "site seo-Love" 
  var reg_exp = /s/g
  var res = str.replace(reg_exp, "S") 
  document.write(res) 
</script>

Ну вот, результат тот, который нам был и нужен: "Site Seo-Love".

Пришло время познакомиться с еще одним модификатором "i". Данный модификатор задает поиск без учета регистра. Например заменим все строчные и заглавные буквы "s" на "c".

1
2
3
4
5
6
<script language="JavaScript"> 
  var str = "site seo-Love" 
  var reg_exp = /s/gi
  var res = str.replace(reg_exp, "c") 
  document.write(res) 
</script>

Получим строку "cite ceo-Love". Видно, что регистр не повлиял на поиск и нашлись все совпадения.

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

Метасимволы в регулярных выражениях JavaScript

Метасимволы поиска совпадений

Количественные метасимволы

Количественные позиционирования

Теперь, если вы вернетесь к самому началу статьи, то сможете понять что же за "магическая" регулярка была написана в первом примере :) В данной статье я дал самые базовые принципы для работы с регулярынми выражениями JavaScript. Если тема вас заинтересовала, то вы без труда найдете огромное количество книг по данной тематике.

Спасибо за внимание!

  • Комментарии не найдены

Оставьте свой комментарий

Оставить комментарий от имени гостя

0 / 2000 Ограничение символов
Ваш текст должен быть в пределах 10-2000 символов
Ваш комментарий будет отправлен на модерацию