2

私の正規表現は次のとおり(\d+_)*で、テスト文字列は1_2_3_. Ruby は文字列を正しく一致させています。ただし、matchdata は一致として「3_」のみを返します。

例えば

irb(main):004:0> /(\d+_)*/.match("1_2_3_")
=> #<MatchData "1_2_3_" 1:"3_">

私は次のようなものを期待します #<MatchData "1_2_3_" 1:"1_", 2:"2_", 3:"3_">

4

3 に答える 3