Поделиться через


Объект Regular Expression

Обновлен: Ноябрь 2007

Объект, содержащий шаблон регулярного выражения вместе с флагами, определяющими способ применения шаблона.

// The explicit constructor for a Regular Expression object.
function RegExp(pattern : String [,flags : String])
function RegExp(regexObj : System.Text.RegularExpressions.Regex)

// The implicit constructor for a Regular Expression object.
/pattern/[flags]

Аргументы

  • pattern
    Обязательный. Шаблон регулярного выражения для использования. Если используется синтаксис 1, шаблон должен быть строкой. При использовании синтаксиса 2, шаблон должен разделяться символами "/".

  • flags
    Необязательный. Если используется синтаксис 1, флаги должны быть строковыми. При использовании синтаксиса 2, символы флагов должны следовать сразу за последним символом "/". Ниже перечислены доступные флаги, которые можно совместно использовать.

    • g (глобальный поиск всех вхождений выражения pattern)

    • i (не учитывать регистр)

    • m (многостроковый поиск)

  • regexObj
    Обязательный. Объект Regex, содержащий шаблон регулярного выражения для использования.

Заметки

Объект Regular Expression не следует путать с глобальным объектом RegExp. Несмотря на созвучность, различить их несложно. Свойства объекта Regular Expression содержат сведения только об определенном экземпляре Regular Expression, в то время как свойства глобального объекта RegExp содержат постоянно обновляемые сведения о каждом возникающем совпадении.

Объекты Regular Expression хранят шаблоны, используемые для поиска сочетаний знаков в строках. После создания объекта Regular Expression, либо он подставляется в метод строки, либо строка подставляется в метод объекта Regular Expression. Сведения о последнем выполненном поиске хранятся в глобальном объекте RegExp.

Если строка поиска часто изменяется или неизвестна (например, строки, полученные в результате ввода пользователя), следует использовать синтаксис 1. Если строка для поиска известна заранее, используйте синтаксис 2.

В JScript аргумент pattern перед использованием компилируется во внутренний формат. Для синтаксиса 1 pattern компилируется непосредственно перед использованием или при вызове метода compile. Для синтаксиса 2 pattern компилируется при загрузке сценария.

z89sx3bt.alert_note(ru-ru,VS.90).gifПримечание.

Объект Regular Expression взаимодействует с типом данных .NET Framework System.Text.RegularExpressions.Regex внутри JScript. При этом другие языки спецификации CLS не могут использовать объект Regular Expression, поскольку только JScript предоставляет объект; он не может быть производным от типа .NET Framework. Следовательно, при аннотировании типов параметров и возвращаемых типов CLS-совместимых методов следует вместо объекта Regular Expression использовать тип данных System.Text.RegularExpressions.Regex. При этом можно использовать объект Regular Expression для аннотирования типов идентификаторов, кроме параметров или возвращаемых типов. Дополнительные сведения см. в разделе Написание CLS-совместимого кода.

Пример

В следующем примере показано, как используется объект Regular Expression. Создаются объекты re1 и re2, которые содержат шаблоны регулярных выражений со связанными флагами. В этом случае, результирующие объекты Regular Expression затем используются методом match:

var s : String = "The rain in Spain falls mainly in the plain";
// Create regular expression object using Syntax 1.
var re1 : RegExp = new RegExp("Spain","i");
// Create regular expression object using Syntax 2.
var re2 : RegExp = /IN/i;

// Find a match within string s.
print(s.match(re1));
print(s.match(re2));

Выходные данные этого сценария:

Spain
in

Требования

Версия 3

Свойства и методы

Свойства и методы объекта Regular Expression

См. также

Основные понятия

Синтаксис регулярного выражения

Ссылки

Оператор new

Объект RegExp

Объект "String"

Regex