Issue #8583 has been reported by ohai (Ippei Obayashi).
Bug #8583: A problem of condition regexp with a named capture
Author: ohai (Ippei Obayashi)
Status: Open
Priority: Normal
Assignee:
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-06-30 trunk 41711) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN
以下の条件分岐を含む正規表現は “xy” “yx” にマッチし、“xx” “yy” にはマッチしません。
/\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
/\A((?x)|(?y))(?()y|x)\z/
“xx” “yy” にマッチして “xy” “yx” にはマッチしない。
2.0.0-p247, trunk の両方で確認しました。
この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。
添付したパッチのように修正すれば直ると思います。
Issue #8583 has been updated by nagachika (Tomoyuki C.).
Backport changed from 1.9.3: UNKNOWN, 2.0.0: UNKNOWN to 1.9.3: UNKNOWN,
2.0.0: REQUIRED
Bug #8583: A problem of condition regexp with a named capture
Author: ohai (Ippei Obayashi)
Status: Open
Priority: Normal
Assignee:
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-06-30 trunk 41711) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: REQUIRED
以下の条件分岐を含む正規表現は “xy” “yx” にマッチし、“xx” “yy” にはマッチしません。
/\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
/\A((?x)|(?y))(?()y|x)\z/
“xx” “yy” にマッチして “xy” “yx” にはマッチしない。
2.0.0-p247, trunk の両方で確認しました。
この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。
添付したパッチのように修正すれば直ると思います。
Issue #8583 has been updated by usa (Usaku NAKAMURA).
Backport changed from 1.9.3: UNKNOWN, 2.0.0: REQUIRED to 1.9.3:
DONTNEED, 2.0.0: REQUIRED
Bug #8583: A problem of condition regexp with a named capture
Author: ohai (Ippei Obayashi)
Status: Open
Priority: Normal
Assignee:
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-06-30 trunk 41711) [x86_64-linux]
Backport: 1.9.3: DONTNEED, 2.0.0: REQUIRED
以下の条件分岐を含む正規表現は “xy” “yx” にマッチし、“xx” “yy” にはマッチしません。
/\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
/\A((?x)|(?y))(?()y|x)\z/
“xx” “yy” にマッチして “xy” “yx” にはマッチしない。
2.0.0-p247, trunk の両方で確認しました。
この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。
添付したパッチのように修正すれば直ると思います。
Issue #8583 has been updated by knu (Akinori MUSHA).
Bug #8583: A problem of condition regexp with a named capture
Author: ohai (Ippei Obayashi)
Status: Open
Priority: Normal
Assignee:
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-06-30 trunk 41711) [x86_64-linux]
Backport: 1.9.3: DONTNEED, 2.0.0: REQUIRED
以下の条件分岐を含む正規表現は “xy” “yx” にマッチし、“xx” “yy” にはマッチしません。
/\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
/\A((?x)|(?y))(?()y|x)\z/
“xx” “yy” にマッチして “xy” “yx” にはマッチしない。
2.0.0-p247, trunk の両方で確認しました。
この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。
添付したパッチのように修正すれば直ると思います。
Issue #8583 has been updated by nagachika (Tomoyuki C.).
Status changed from Open to Assigned
Assignee set to nagachika (Tomoyuki C.)
Backport #8583: A problem of condition regexp with a named capture
Author: ohai (Ippei Obayashi)
Status: Assigned
Priority: Normal
Assignee: nagachika (Tomoyuki C.)
Category:
Target version:
以下の条件分岐を含む正規表現は “xy” “yx” にマッチし、“xx” “yy” にはマッチしません。
/\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
/\A((?x)|(?y))(?()y|x)\z/
“xx” “yy” にマッチして “xy” “yx” にはマッチしない。
2.0.0-p247, trunk の両方で確認しました。
この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。
添付したパッチのように修正すれば直ると思います。
Issue #8583 has been updated by knu (Akinori MUSHA).
Onigmo 5.13.5 has been released, which includes the fix.
Bug #8583: A problem of condition regexp with a named capture
Author: ohai (Ippei Obayashi)
Status: Open
Priority: Normal
Assignee:
Category:
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev (2013-06-30 trunk 41711) [x86_64-linux]
Backport: 1.9.3: DONTNEED, 2.0.0: REQUIRED
以下の条件分岐を含む正規表現は “xy” “yx” にマッチし、“xx” “yy” にはマッチしません。
/\A((x)|(y))(?(2)y|x)\z/
名前付きキャプチャを用いた以下の正規表現も同じ挙動をするはずですが、そうはなっていません。
/\A((?x)|(?y))(?()y|x)\z/
“xx” “yy” にマッチして “xy” “yx” にはマッチしない。
2.0.0-p247, trunk の両方で確認しました。
この問題について調べた所、 名前付きキャプチャを使うときキャプチャの番号をrenumberしている
所で renumber がもれています。
添付したパッチのように修正すれば直ると思います。