通过一堆if
语句,我将一个字符串连接起来用作SQL语句。这个字符串的前3个字符总是" OR"。如何有效删除前4个字符。
example:
sql = " OR tennis = TRUE OR basetball = TRUE"
if condition sql = sql + " OR racquetball = TRUE"
所以我需要删除" OR"在任何字符串的开头创建了2个空格。
感谢您的时间
答案 0 :(得分:8)
最终只是将事情加在一起会更好:
sql = [ ]
sql << 'tennis = TRUE'
sql << 'baseball = TRUE'
if (condition)
sql << 'racquetball = TRUE'
end
sql = sql.join(' OR ')
您还可以通过重新映射来减少冗余:
sports = [ :tennis, :baseball ]
sql = sports.collect { |s| "#{s} = TRUE" }.join(' OR ')
如果您打算修剪前四个字母:
sql = " OR x OR y"
sql.slice!(" OR ")
sql
# => "x OR y"