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
mb_regex_set_options
(PHP 4 >= 4.3.0, PHP 5)
mb_regex_set_options — マルチバイト正規表現関数のデフォルトオプションを取得または設定する
説明
string mb_regex_set_options
([ string
$options
] )
options で表されるオプションを、
マルチバイト対応の正規表現関数のデフォルトに設定します。
パラメータ
-
options -
設定するオプション。文字列で設定し、各文字がオプションを表します。 モードを設定する際には、モード文字は最後に指定しなければなりません。 オプションは複数指定できますが、モードはひとつしか指定できません。
Regex のオプション オプション 意味 i 曖昧なマッチをオンにする x 拡張パターン形式を有効にする m '.' が改行にマッチする s '^' -> '\A', '$' -> '\Z' p m と s を両方指定するのと同じ l 最も長くマッチするものを探す n 空のマッチを無視する e 結果のコードを eval() する Regex 構文モード モード 意味 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 を省略した場合は、
現在設定されているオプションを返します。
参考
- mb_split() - マルチバイト文字列を正規表現により分割する
- mb_ereg() - マルチバイト文字列に正規表現マッチを行う
- mb_eregi() - マルチバイト文字列に大文字小文字を区別しない正規表現マッチを行う
indeyets at php dot net ¶
3 years ago
patryk dot szczyglowski at gmail dot com ¶
4 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'.
