Como o Âncora \ ze \ G funciona em Ruby?

Eu estou usando Ruby1.9.3. Eu sou novato nessa plataforma.

Dedoc Eu acabei de me familiarizar com doisanchor que são\z e\G. Agora eu joguei um pouco com\z para ver como funciona, como a definição (Fim ouFim da corda) me deixou confuso, não consigo entender o que significa dizer - porEnd. Então eu tentei os pequenos trechos abaixo. Mas ainda incapaz de pegar.

CÓDIGO

irb(main):011:0> str = "Hit him on the head me 2\n" + "Hit him on the head wit>
=> "Hit him on the head me 2\nHit him on the head with a 24\n"
irb(main):012:0> str =~ /\d\z/
=> nil

irb(main):013:0> str = "Hit him on the head me 24 2\n" + "Hit him on the head >
=> "Hit him on the head me 24 2\nHit him on the head with a 24\n"
irb(main):014:0> str =~ /\d\z/
=> nil

irb(main):018:0> str = "Hit1 him on the head me 24 2\n" + "Hit him on the head>
=> "Hit1 him on the head me 24 2\nHit him on the head with a11 11 24\n"
irb(main):019:0> str =~ /\d\z/
=> nil
irb(main):020:0>

Toda vez que eu tenhonil como a saída. Então, como está indo o cálculo para\z ? o queEnd significar? - Eu acho que meu conceito levou algo de errado com oEnd palavra no documento. Então, qualquer um poderia me ajudar a entender o motivo pelo qual isso está acontecendo?

E também não encontrei nenhum exemplo para a âncora\G . Qualquer exemplo, por favor, de vocês para visualizar como\G usado em programação em tempo real?

EDITAR

irb(main):029:0>
irb(main):030:0*  ("{123}{45}{6789}").scan(/\G(?!^)\{\d+\}/)
=> []
irb(main):031:0>  ('{123}{45}{6789}').scan(/\G(?!^)\{\d+\}/)
=> []
irb(main):032:0>

obrigado

questionAnswers(2)

yourAnswerToTheQuestion