如何删除以下Ruby代码:
x = 'a random string to be formated'
x = x.split('^')[0] if x.include?('^')
x = x.split('$')[0] if x.include?('$')
x = x.split('*')[0] if x.include?('*')
我正在寻找令人惊讶的优雅红宝石衬里,但我很难找到它。 它应该有点可读。
由于
答案 0 :(得分:2)
我认为这可能是你正在寻找的东西
x.split(/\^|\$|\*/)
答案 1 :(得分:0)
这对我有用:
x = "a random string to be formatted"
['^', '$', '*'].each { |token|
x = x.split(token)[0] if x.include?(token)
}
答案 2 :(得分:0)
根据您提供的代码
x = 'a random string to be formated'
%w(^ $ *).each do |symbol|
x = x.split(symbol)[0] if x.include?(symbol)
end
答案 3 :(得分:0)
你正在寻找这个正则表达式:
string.match(/^([^^$*]+)[$^*]?/).captures[0]
它会在$, ^, or *
的第一次或字符串结尾处返回所有字符。