1. Методы определения регулярных выражений
Существует два способа определения регулярных выражений: определение конструктора и определение прямого выражения прямого выражения. Например:
Скопируйте код следующим образом: var reg1 = new Regexp ('/d {5, 11}');
var reg2 = // d {5, 12}/; // Определение прямым количеством
Регулярные выражения непосредственно измеряют символы
/O: NUL -символы (/U0000)
/T: символ TAB (/U0009)
/n: Newline Marcy (/U000A)
/v: вертикальный символ вкладка (/u000b)
/f: изменение страницы (/u000c)
/r: возвратный символ перевозки (/u000d)
/xnn: латинский символ, указанный в шестнадцатеричном номере nn, например, /x0a эквивалентен /n
/uxxxx: символы Unicode, указанные в шестнадцатеричном номере xxxx, например /U0009, эквивалентны /t
/cx: элемент управления ^x, например, /cj эквивалентен разрыву строки /n
Регулярные символы якоря выражения
^: Сопоставьте начало строки, в многослойном поиске, соответствует началу линии
$: Сопоставьте конец строки, в многослойном поиске, соответствует концу строки
/B: Сопоставьте границу слова.
/B: Сопоставьте положение границ, не являющихся слов
(?
(?
Классы персонажей для регулярных выражений
[...]: любой персонаж в квадратных скобках
[^...]: любой персонаж, не в квадратных скобках
.: Любой символ, кроме разрывов линий и других терминаторов Unicode Line
/W: любое слово, состоящее из символов ASCII, эквивалентное [A-za-Z0-9]
/W: любое слово, которое не состоит из символов ASCII, эквивалентно [^a-za-z0-9]
/s: любое пробелы Unicode
/S: любые неакуникодные пробелы символов, обратите внимание, что /w и /s разные
/D: любой номер ASCII, эквивалентный [0-9]
/D: любой символ, кроме числа ASCII, эквивалентный [^0-9]
[/b]: Прямое количество Backspace (Специальный случай)
Повторите синтаксис символов для регулярных выражений
{n, m}: сопоставьте предыдущий элемент как минимум n раз, но не более, чем m раз
{n,}: сопоставить предыдущий пункт n раз или более раз
{n}: сопоставьте предыдущий элемент n раз
?: Соответствует предыдущий пункт 0 или 1 раз, то есть предыдущий элемент необязательно, эквивалентен {0, 1}
+: Совпадать с предыдущим элементом 1 или более раз, эквивалентно {1,}
*: Сопоставьте предыдущий элемент 0 или более раз, эквивалентно {0,}
Выбор, группировка и эталонные символы регулярных выражений
|: Выберите, сопоставив подэкспрессию на левой или субэкспрессии справа
(…): Комбинация объедините несколько элементов в единицу, которые можно изменить с помощью символов, таких как «*», «+», "?" использовать
(?: ...): только комбинируют элементы, объединяйте элементы в устройство, но не помните символов, которые соответствуют перетасовку
/N: соответствует персонажу, который совпадает с NTH, группируется. Группировка формы не кодируется
Регулярное модификатор выражения
I: выполнять нечувствительное соответствие случая
G: Короче говоря, выполните глобальный матч, найдите все совпадения, вместо того, чтобы остановиться после поиска первого
M: Multi-Line Matchting Pattern, ^ соответствует началу линии и начало строки, $ соответствует конец линии и конец строки
Строковой метод для сопоставления рисунков
Search (): его аргумент -это регулярное выражение, возвращая начальную позицию первой подстроки в соответствии с ним, и возвращает -1, если нет подбодной подстроения. Если параметр search () не является регулярным выражением, он сначала будет преобразован в регулярное выражение через конструктор Regexp, Search () не поддерживает глобальный поиск, поскольку он игнорирует модификатор G. нравиться:
Кода -копия выглядит следующим образом:
var s = "javascript" .search (/script/i);
Заменить (): он используется для выполнения поиска и замены. Получить два параметра, первым является регулярное выражение, а второе - это строка, которая должна быть заменена. Если регулярное выражение установлено, выполняется глобальная замена, в противном случае заменяется только соответствующая первая подстрока. Если первый аргумент не является регулярным выражением, напрямую ищите строку вместо того, чтобы преобразовать ее в регулярное выражение. нравиться:
Скопируйте код следующим образом: var s = "javascript" .replace (/java/gi, "Script");
Match (): его аргумент - это регулярное выражение. Если установлен модификатор G, выполняется глобальное соответствие. нравиться:
Скопируйте код следующим образом: var D = '55 FF 33 HH 77 TT'.Match (// d+/g);
Split (): Этот метод используется для разделения строки, которая вызывает ее на массив, состоящий из подстроков. нравиться:
Скопируйте код следующим образом: var d = '123,31,453,645'.split (', ');
var d = '21, 123, 44, 64, 67, 3'.split (// s*,/s*/); , "67", "3"]
2. Объект Regexp
Каждый объект Regexp имеет 5 свойств. Источник свойства представляет собой строку только для чтения, содержащая текст регулярного выражения. Property Global является логическим значением только для чтения, чтобы указать, имеет ли регулярное выражение модификатор G. Свойство игнорирование является логическим значением только для чтения, чтобы указать, имеет ли регулярное выражение модификатор i. Multiline Property-это логическое значение только для чтения, чтобы указать, имеет ли регулярное выражение модификатор M. Свойство LastIndex - это читаемое и записываемое целое число.
Есть два метода для объекта Regexp. Параметр exec () является строкой, и его функция аналогична Match (). Если не найдено соответствие, возвращайте NULL. Будет ли регулярное выражение имеет модификатор G, вернет тот же массив. Когда регулярное выражение объекта Calling exec () имеет модификатор g, он установит свойство LaterIndex текущего объекта регулярного выражения в позицию символа рядом с подбором соответствующей подстроения. Когда одно и то же регулярное выражение вызывает exec () во второй раз, он начнет извлекать из строки, указанную свойством Lastindex, и если exc () не находит результаты сопоставления, он сбрасывает LastIndex до 0. нравиться:
Кода кода следующая: var p = /java /g;
var text = "javaScript веселее, чем Java!"
var r;
while ((r = p.exec (text))! = null) {
console.log (r, 'lastindex:' + p.lastindex);
}
Другим методом является тест (), который имеет параметр, который является строкой. нравиться:
Кода кода следующая: var p = /java /i;
P.Test ('JavaScript');