2015-08-14 95 views
-4

我是一个新手,Ruby和我试图取代使用GSUB包含正斜杠一个字符串的字符串,红宝石搜索和替换它包含一个斜杠

background: url(../images/body-bg-sky.jpg) repeat-x center top #fff; 

background: black 

我用下面的代码搜索和替换字符串,但它没有工作

File.write(f = "changes.css", File.read(f).gsub(/background: url(..\b/images\b/body-bg-sky.jpg) repeat-x center top #fff;/,"background: black;")) 

请帮我问题

+2

请使用代码格式。 – Borsunho

+0

和拼写和语法 – Pete

+0

嗨,我想替换字符串new_contents = text.gsub(/ background:url(../ images/body - bg - sky.jpg)repeat - x center top#fff; /,“背景:黑色;“) –

回答

1

使用正则表达式时,特殊字符(如正斜杠,圆点和圆括号)需要使用反斜杠进行转义。

如果str是有问题的字符串,这应该工作:

str.sub(/background: .*\/.*$/, 'background: black') 

我建议Rubular帮助你学习如何使用正则表达式。