【发布时间】:2018-07-16 15:25:27
【问题描述】:
我有"untitled"、"untitled(1)" 或"untitled(2)" 之类的字符串。
如果有的话,我想得到括号之间的最后一个整数值。到目前为止,我尝试了很多正则表达式,对我来说有意义的(我是正则表达式的新手)看起来像这样:
number= string[/\([0-9]+\)/]number= string[/\(([0-9]+)\)/]
但它仍然返回带有括号的值。
如果没有左括号,那么得到一个空字符串(或nil)会很好。诸如"untitled($)" 之类的情况,获取'$' 字符或nil 或空字符串就可以了。对于"untitled(3) animal(4)",我想得到4。
我一直在寻找很多关于如何做到这一点的主题,但它似乎从来没有用过......我在这里错过了什么?
【问题讨论】:
-
字符串
"untitled"是否重要,或者是任何字符串的替代(例如,"cat(9)")?您还没有定义“价值”。它必须是非负整数(自然数)的字符串表示形式,如您的示例所示,还是可能为负整数(哪个)?如果字符串是"untitled"、"the cat in the hat"、"untitled($)"或"untitled(3) animal(4)",您希望返回什么?请编辑您的问题,而不是尝试在 cmets 中详细说明(这也应该阻止进一步的投票)。文字的精度与代码的精度一样重要。
标签: ruby regex parentheses