0

次の例でなぜ#2機能せず、機能するのか混乱してい#3ます。

 #1. get `o` if immediately preceded by J
"Jones Bond".scan(/(?<=J)o/) #=> o

 #2. get `o` if preceded by J anywhere. Since `J` occurs once I am using `+`
"James Bond".scan(/(?<=J)+o/) #=> []  empty

 #3. get `o` if preceded by J anywhere zero or more times by using `*`
"James Bond".scan(/(?<=J)*o/) #=> o

簡単に覚えられるように翻訳lookbehindします。それが正しいか?left-to-rightlookaheadright-to-left

4

1 に答える 1