从ruby

时间:2015-04-22 12:42:36

标签: ruby regex

我有一个字符串,如下所示

"/br/watch/123456"

我需要删除/ br并仅提取/ watch / 123456。什么是在红宝石中实现它的最佳方式。

4 个答案:

答案 0 :(得分:0)

您可以使用sub从字符串中删除第一次出现/br,否则gsub删除所有出现次数

"/br/watch/123456".sub("/br","")
# => "/watch/123456"

答案 1 :(得分:0)

使用sub。 sub有助于对字符串进行单一替换。以下代码仅在/br子字符串出现时才会删除。

> "/br/watch/123456".sub(/^\/br/, '')
=> "/watch/123456"

答案 2 :(得分:0)

如果它总是要删除三个字符,你可以。

"/br/watch/123456"[3..-1]

或更详细,可能更慢

"/br/watch/123456".chars.drop(3).join

答案 3 :(得分:-2)

您可以使用.sub(<input text>,<replace with text>)。它与其他脚本/编程语言中的replace类似。

"/br/watch/123456".sub("/br","")