获得红宝石潜在捕获物的紧凑方法

太空麋

我想遍历一些文本行并执行以下操作:

caps = /something(.*)to capture/.match(line).captures
do_something_with_caps(caps[0])

但是Undefined method 'captures' for nil:NilClass只要没有比赛我就会得到我可以将匹配项分配给一个临时变量,然后nil在获取捕获之前进行测试,但这对我来说似乎很冗长。有没有更紧凑的方法可以做到这一点?

鲁斯塔姆·加萨诺夫(Rustam A.

更换.match.captures.scan作为一种替代方案:

caps = line.scan(/something(.*)to capture/).flatten
do_something_with_caps(caps[0])

例子:

'somethingabcdto capture'.scan(/something(.*)to capture/).flatten #=> ["abcd"]
'nothing to capture here'.scan(/something(.*)to capture/).flatten #=> []

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

红宝石脚本后清理-捕获信号

来自分类Dev

不捕获红宝石中的命名组

来自分类Dev

红宝石脚本后清理-捕获信号

来自分类Dev

红宝石点击方法对{}的作用

来自分类Dev

红宝石内置方法的定义

来自分类Dev

红宝石的“方法”如何工作?

来自分类Dev

复杂的红宝石注入方法

来自分类Dev

红宝石中的Trim()方法?

来自分类Dev

在红宝石中尝试方法

来自分类Dev

在红宝石区块之外获得价值

来自分类Dev

未定义的方法(NoMethodError)红宝石

来自分类Dev

关于红宝石的自由浮动方法

来自分类Dev

红宝石取消定义方法时的别名

来自分类Dev

评估红宝石中args的简便方法

来自分类Dev

红宝石中+ =的方法符号是什么?

来自分类Dev

红宝石const_missing方法之谜

来自分类Dev

红宝石:未定义的方法排除?

来自分类Dev

红宝石方法的范围和干燥

来自分类Dev

红宝石懒惰私有方法

来自分类Dev

“未定义的方法”错误红宝石

来自分类Dev

简单的红宝石方法助手

来自分类Dev

如何定义红宝石产量的方法

来自分类Dev

红宝石块/过程和方法调用

来自分类Dev

红宝石中的单例方法链接

来自分类Dev

红宝石const_missing方法之谜

来自分类Dev

红宝石性能-&:比调用方法慢吗?

来自分类Dev

重构Rails中的红宝石方法

来自分类Dev

红宝石等号登录方法调用

来自分类Dev

红宝石在同时调用方法