Я только что просмотрел документы для Atomic Grouping и rubyinfo и некоторые быстрые вопросы пришли мне на ум следующим образом:
- Почему имя получилось как "Атомная группировка" ? Что "атомарность" , у нее нет общей группировки.
- Как атомная группировка отличается от общей группировки?
- Почему атомные группы называются не захватывающими группами?
Я попытался понять код ниже, но имел путаницу в отношении вывода и того, как они работают по одной и той же строке?
irb(main):001:0> /a(?>bc|b)c/ =~ "abbcdabcc"
=> 5
irb(main):004:0> $~
=> #<MatchData "abcc">
irb(main):005:0> /a(bc|b)c/ =~ "abcdabcc"
=> 0
irb(main):006:0> $~
=> #<MatchData "abc" 1:"b">