如何在某个单词后删除子串?

时间:2016-06-07 14:33:55

标签: ruby regex gsub

我有一个很长的字符串,想要删除一个字后面的字符串部分,我正在寻找gsub!执行此操作的命令。如果你能提供,我将不胜感激。

供参考: 我知道删除字体“body”之前的String部分(String称为内容)的命令是:

 contents.gsub!(/.*?(?=body)/im, "")

感谢。

2 个答案:

答案 0 :(得分:2)

此代码:

"this has a word in it".gsub! /(word).*/, $1

将字符串更改为"this has a word"

"字"括号中是正则表达式返回的第一个参数,$1返回该参数。

See the Ruby docs for gsub

答案 1 :(得分:0)

继续你的正则表达式,这需要身体中的/被转义,我假设你的意思是每一次

contents = "Stuff before </body> stuff after"
contents.gsub(/(?<=\/body>).+/, "")
=> "Stuff before </body>"