1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* doc/regexp.rdoc: [DOC] Elaborate on the \G anchor. [ci skip]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
knu 2016-01-08 13:34:52 +00:00
parent b6261054cd
commit 066b825400
2 changed files with 17 additions and 1 deletions

View file

@ -1,3 +1,7 @@
Fri Jan 8 22:30:06 2016 Akinori MUSHA <knu@iDaemons.org>
* doc/regexp.rdoc: [DOC] Elaborate on the \G anchor. [ci skip]
Fri Jan 8 19:49:27 2016 Koichi Sasada <ko1@atdot.net>
* gc.c: remove heap_page::body. Instead of this field,

View file

@ -470,7 +470,19 @@ characters, <i>anchoring</i> the match to a specific position.
* <tt>\Z</tt> - Matches end of string. If string ends with a newline,
it matches just before newline
* <tt>\z</tt> - Matches end of string
* <tt>\G</tt> - Matches point where last match finished
* <tt>\G</tt> - Matches first matching position:
In methods like <tt>String#gsub</tt> and <tt>String#scan</tt>, it changes on each iteration.
It initially matches the beginning of subject, and in each following iteration it matches where the last match finished.
" a b c".gsub(/ /, '_') #=> "____a_b_c"
" a b c".gsub(/\G /, '_') #=> "____a b c"
In methods like <tt>Regexp#match</tt> and <tt>String#match</tt> that take an (optional) offset, it matches where the search begins.
"hello, world".match(/,/, 3) #=> #<MatchData ",">
"hello, world".match(/\G,/, 3) #=> nil
* <tt>\b</tt> - Matches word boundaries when outside brackets;
backspace (0x08) when inside brackets
* <tt>\B</tt> - Matches non-word boundaries