Объект 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 компилируется при загрузке сценария.
Примечание. |
---|
Объект 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
Требования
Свойства и методы
Свойства и методы объекта Regular Expression
См. также
Основные понятия
Синтаксис регулярного выражения