Ruby支持条件正则表达式

时间:2010-02-05 15:02:25

标签: python ruby regex conditional

只是一个语言功能问题,我知道有很多方法可以在正则表达式(或多个正则表达式)之外执行此操作。

ruby​​是否支持conditional regular expressions?基本上,正则表达式中的IF-THEN-ELSE分支,其中IF的谓词是表达式中捕获的组的存在(或缺失)。

在perl中,语法为(?(predicate)yes-pattern|no-pattern),如

/(?:y|(x))(?(1)y|x)/

在我浏览的任何ruby文档中,我都找不到任何类似的内容,但我想我会在这里要求确保,以防我在搜索错误的单词,或者它是从文档中删除的。

2 个答案:

答案 0 :(得分:4)

不,ruby不支持(无论是1.8还是1.9)。

答案 1 :(得分:-1)

FWIW,Python从2.4开始支持这个: http://docs.python.org/library/re#regular-expression-syntax