mb_regex_set_options

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

mb_regex_set_optionsУстановка/получение значений по умолчанию для настроек функций mbregex

Описание

mb_regex_set_options ([ string $options = mb_regex_set_options() ] ) : string

Устанавливает параметры по умолчанию, описанные в options, для функций регулярных выражений, работающих со строками в многобайтных кодировках.

Список параметров

options

Настройки, которые требуется задать. Это строка, в которой каждый символ отвечает за какую-то настройку. Для установки режима, его символ должен идти последним. Таким образом, можно задать только один режим, но несколько опций.

Настройки регулярных выражений
Настройка Описание
i Включение неоднозначных совпадений
x Включает форму расширенного шаблона
m '.' совпадения с переводами строк
s '^' -> '\A', '$' -> '\Z'
p То же, что и объединение m и s
l Поиск совпадений, имеющих наибольшую длину
n Игнорировать пустые совпадения
e Вычисление кода результата функцией eval()
Синтаксические режимы регулярных выражений
Режим Описание
j Java (Sun java.util.regex)
u GNU regex
g grep
c Emacs
r Ruby
z Perl
b POSIX Basic regex
d POSIX Extended regex

Возвращаемые значения

Предыдущие варианты. Если options опущен, он возвращает строку (string), которая описывает текущие параметры.

Список изменений

Версия Описание
8.0.0 Если задан параметр options, возвращаются предыдущие параметры. Ранее возвращались текущие параметры.

Смотрите также

  • mb_split() - Разделение строк в многобайтных кодировках, используя регулярное выражение
  • mb_ereg() - Совпадение с регулярным выражением с поддержкой многобайтовых кодировок
  • mb_eregi() - Поиск соответствий регулярному выражению с поддержкой многобайтовых символов без учета регистра

add a note add a note

User Contributed Notes 2 notes

up
2
indeyets at php dot net
11 years ago
It's a bit trickier, than patryk wrote:

There are parameters (you can specify several of these at the same time):

'i': ONIG_OPTION_IGNORECASE;
'x': ONIG_OPTION_EXTEND;
'm': ONIG_OPTION_MULTILINE;
's': ONIG_OPTION_SINGLELINE;
'p': ONIG_OPTION_MULTILINE | ONIG_OPTION_SINGLELINE;
'l': ONIG_OPTION_FIND_LONGEST;
'n': ONIG_OPTION_FIND_NOT_EMPTY;
'e': eval() resulting code

And there are "modes" (if you specify several of these, the LAST one will be used):
'j': ONIG_SYNTAX_JAVA;
'u': ONIG_SYNTAX_GNU_REGEX;
'g': ONIG_SYNTAX_GREP;
'c': ONIG_SYNTAX_EMACS;
'r': ONIG_SYNTAX_RUBY;
'z': ONIG_SYNTAX_PERL;
'b': ONIG_SYNTAX_POSIX_BASIC;
'd': ONIG_SYNTAX_POSIX_EXTENDED;

You can find descriptions of these constants here: http://www.geocities.jp/kosako3/oniguruma/doc/API.txt
up
1
patryk dot szczyglowski at gmail dot com
11 years ago
Supported options are:

i - ONIG_OPTION_IGNORECASE
x - ONIG_OPTION_EXTEND
m - ONIG_OPTION_MULTILINE
s - ONIG_OPTION_SINGLELINE
p - ONIG_OPTION_MULTILINE | ONIG_OPTION_SINGLELINE
l - ONIG_OPTION_FIND_LONGEST
n - ONIG_OPTION_FIND_NOT_EMPTY
j - ONIG_SYNTAX_JAVA
u - ONIG_SYNTAX_GNU_REGEX
g - ONIG_SYNTAX_GREP
c - ONIG_SYNTAX_EMACS
r - ONIG_SYNTAX_RUBY
z - ONIG_SYNTAX_PERL
b - ONIG_SYNTAX_POSIX_BASIC
d - ONIG_SYNTAX_POSIX_EXTENDED
e - eval() resulting code

Constants above are from Oniguruma regexp library, which is used internally. Default value for PHP 5.2.x is 'pr'.
To Top