summaryrefslogtreecommitdiff
path: root/doc/RE
diff options
context:
space:
mode:
Diffstat (limited to 'doc/RE')
-rw-r--r--doc/RE50
1 files changed, 35 insertions, 15 deletions
diff --git a/doc/RE b/doc/RE
index 16cc888..8781b38 100644
--- a/doc/RE
+++ b/doc/RE
@@ -1,4 +1,4 @@
-Oniguruma Regular Expressions Version 6.5.0 2017/07/30
+Oniguruma Regular Expressions Version 6.6.0 2017/08/29
syntax: ONIG_SYNTAX_RUBY (default)
@@ -80,6 +80,16 @@ syntax: ONIG_SYNTAX_RUBY (default)
\O true anychar (?m:.) (* original function)
+ \X Extended Grapheme Cluster (?>\O(?:\Y\O)*)
+
+ \X doesn't check whether matching start position is boundary.
+ Write as \y\X if you want to ensure it.
+
+ Unicode case:
+ See [Unicode Standard Annex #29: http://unicode.org/reports/tr29/]
+
+ Not Unicode: (?>\r\n|\O)
+
Character Property
@@ -139,6 +149,9 @@ syntax: ONIG_SYNTAX_RUBY (default)
$ end of the line
\b word boundary
\B non-word boundary
+ \y Extended Grapheme Cluster boundary
+ \Y Extended Grapheme Cluster non-boundary
+
\A beginning of string
\Z end of string, or before newline at the end
\z end of string
@@ -207,11 +220,19 @@ syntax: ONIG_SYNTAX_RUBY (default)
(?#...) comment
- (?imx-imx) option on/off
- i: ignore case
- m: multi-line (dot (.) also matches newline)
- x: extended form
- (?imx-imx:subexp) option on/off for subexp
+ (?imxWDSP-imxWDSP) option on/off
+ i: ignore case
+ m: multi-line (dot (.) also matches newline)
+ x: extended form
+ W: ASCII only word (\w, \p{Word}, [[:word:]])
+ ASCII only word bound (\b)
+ D: ASCII only digit (\d, \p{Digit}, [[:digit:]])
+ S: ASCII only space (\s, \p{Space}, [[:space:]])
+ P: ASCII only POSIX properties (includes W,D,S)
+ (alnum, alpha, blank, cntrl, digit, graph,
+ lower, print, punct, space, upper, xdigit, word)
+
+ (?imxWDSP-imxWDSP:subexp) option on/off for subexp
(?:subexp) non-capturing group
(subexp) capturing group
@@ -245,24 +266,23 @@ syntax: ONIG_SYNTAX_RUBY (default)
(?~absent) Absent repeater (* proposed by Tanaka Akira)
This works like .* (more precisely \O*), but it is
limited by the range that does not include the string
- match with absent.
+ match with <absent>.
This is a written abbreviation of (?~|absent|\O*).
\O* is used as a repeater.
(?~|absent|exp) Absent expression (* original)
This works like "exp", but it is limited by the range
- that does not include the string match with absent.
+ that does not include the string match with <absent>.
ex. (?~|345|\d*) "12345678" ==> "12", "1", ""
- (?~|absent) Absent cutter (* original)
+ (?~|absent) Absent stopper (* original)
After passed this operator, string right range is limited
at the point that does not include the string match whth
- absent.
+ <absent>.
- (?~|) Absent clear
- Clear the effects caused by Absent cutters.
- (* This operation is not cancelled by backtrack.)
+ (?~|) Range clear
+ Clear the effects caused by Absent stoppers.
* Nested Absent functions are not supported and the behavior
is undefined.
@@ -273,7 +293,7 @@ syntax: ONIG_SYNTAX_RUBY (default)
condition_exp can be a backreference number/name or a normal
regular expression.
- When condition_exp is a backreference, both then_exp and
+ When condition_exp is a backreference number/name, both then_exp and
else_exp can be omitted.
Then it works as a backreference validity checker.
@@ -420,7 +440,7 @@ A-2. Original extensions
A-3. Missing features compared with perl 5.8.0
+ \N{name}
- + \l,\u,\L,\U, \X, \C
+ + \l,\u,\L,\U,\C
+ (?{code})
+ (??{code})