[#47548] [ruby-trunk - Feature #8696][Open] Process.setproctitle — "znz (Kazuhiro NISHIYAMA)" <redmine@...>

13 messages 2013/07/27

[#47559] [ruby-trunk - Bug #8711][Open] 最近NoMemoryErrorが多い — "naruse (Yui NARUSE)" <naruse@...>

13 messages 2013/07/31

[ruby-dev:47481] [Backport 200 - Backport #8583][Assigned] A problem of condition regexp with a named capture

From: "nagachika (Tomoyuki Chikanaga)" <nagachika00@...>
Date: 2013-07-04 15:51:58 UTC
List: ruby-dev #47481
Issue #8583 has been updated by nagachika (Tomoyuki Chikanaga).

Status changed from Open to Assigned
Assignee set to nagachika (Tomoyuki Chikanaga)


----------------------------------------
Backport #8583: A problem of condition regexp with a named capture
https://bugs.ruby-lang.org/issues/8583#change-40293

Author: ohai (Ippei Obayashi)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki Chikanaga)
Category: 
Target version: 


以下の条件分岐を含む正規表現は "xy" "yx" にマッチし、"xx" "yy" にはマッチしません。
  /\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
  /\A((?<x>x)|(?<y>y))(?(<x>)y|x)\z/
  # "xx" "yy" にマッチして "xy" "yx" にはマッチしない。

2.0.0-p247, trunk の両方で確認しました。

この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。

添付したパッチのように修正すれば直ると思います。




-- 
http://bugs.ruby-lang.org/

In This Thread

Prev Next