Ruby 正则表达式:如果字符串为';s在两个空格之间,如果没有,则保持不变

Ruby 正则表达式:如果字符串为';s在两个空格之间,如果没有,则保持不变,ruby,regex,Ruby,Regex,只有当字符串a位于两个空格之间时,我才需要删除另一个字符串B中存在的字符串a string A = "e" string B = "the fifth letter is e " 替换“e”的示例:“第五个字母是e”-->“第五个字母是” 编辑问题后编辑答案。在两个空格字符之间查找“e”字符的可能正则表达式是/\se\s/。在本例中,我将用一个空字符串替换它。您可以使用返回字符串副本或修改原始字符串的 更新:由于您再次编辑了问题,以下是未更新的答案: ruby-1.9.2-p290 :001

只有当字符串a位于两个空格之间时,我才需要删除另一个字符串B中存在的字符串a

string A = "e"
string B = "the fifth letter is e "
替换“e”的示例:
“第五个字母是e”
-->“第五个字母是”

编辑问题后编辑答案。在两个空格字符之间查找“e”字符的可能正则表达式是
/\se\s/
。在本例中,我将用一个空字符串替换它。您可以使用返回字符串副本或修改原始字符串的

更新:由于您再次编辑了问题,以下是未更新的答案:

ruby-1.9.2-p290 :001 > a = "e"
 => "e" 
ruby-1.9.2-p290 :002 > b = "the fifth letter is e "
 => "the fifth letter is e " 
ruby-1.9.2-p290 :003 > print b.gsub(/\s#{a}\s/,"")
the fifth letter is => nil 
编辑问题后编辑答案。在两个空格字符之间查找“e”字符的可能正则表达式是
/\se\s/
。在本例中,我将用一个空字符串替换它。您可以使用返回字符串副本或修改原始字符串的

更新:由于您再次编辑了问题,以下是未更新的答案:

ruby-1.9.2-p290 :001 > a = "e"
 => "e" 
ruby-1.9.2-p290 :002 > b = "the fifth letter is e "
 => "the fifth letter is e " 
ruby-1.9.2-p290 :003 > print b.gsub(/\s#{a}\s/,"")
the fifth letter is => nil 

你真的不需要正则表达式

a = "e"
b = "the fifth letter is e "
c = b.gsub(" " << a << " ", "")
a=“e”
b=“第五个字母是e”

c=b.gsub(“对此,您并不真正需要正则表达式

a = "e"
b = "the fifth letter is e "
c = b.gsub(" " << a << " ", "")
a=“e”
b=“第五个字母是e”

c=b.gsub(“它对我有用。当然,我在这段时间内编辑了几次帖子…(标准FGitW技术,你知道吗?;-))它对我有用。当然,我在这段时间内编辑了几次帖子…(标准FGitW技术,你知道吗?;-)我不明白你的例子。这里哪一个是A和B?有限制吗?就像字符串被多个空格包围一样?在您的示例中,e不在两个空格之间。什么是替代品?移除它?我不明白你的例子。这里哪一个是A和B?有限制吗?就像字符串被多个空格包围一样?在您的示例中,e不在两个空格之间。什么是替代品?删除它?是的,这是错误的,因为问题在不断变化,所以我应该不断更新答案…是的,这是错误的,因为问题在不断变化,所以我应该不断更新答案。。。