用gsub替换ruby字符串,条件为多个字符串

时间:2017-07-12 12:29:50

标签: ruby

我的字符串为“pas”和“with_pas”。我想用空字符串替换它。现在我正在做如下

string.gsub("pas","").gsub("with_pas","") 

在某些情况下,我将字符串设为“pas”,其他字符串设为“with_pas”。

有更好的方法吗?

3 个答案:

答案 0 :(得分:3)

您可以使用当前的方法,但需要更改订单,否则它将无法正常工作:

string.gsub("with_pas","").gsub("pas","")

答案 1 :(得分:2)

使用正则表达式怎么样?

string.gsub(/(with_)?pas/, "")

答案 2 :(得分:0)

str.gsub(/pas|with_pas/, '').squeeze

这将删除字词,而squeeze将删除gsub添加的额外空格。