0

文字列を分割して、ビューの下から順に印刷する必要があります。標準的な方法は、最初から文字列の読み取りを開始し、それに応じて出力します。どうすれば元に戻すことができますか?

<% @a[:log].to_s.split(/----/).each do |line| %>
<div width='100%'><pre class="log"><%= "#{line}" %></pre></div>
<% end %>


@a[:log] is a string something like this: One ---- Two ---- Three ---- Four

I want this printed reverse starting from Four, instead of One. 

<div width='100%'><pre class="log">Four</pre></div>
<div width='100%'><pre class="log">Three</pre></div>
<div width='100%'><pre class="log">Two</pre></div>
<div width='100%'><pre class="log">One</pre></div>
4

3 に答える 3

2

それ以外の:

@a[:log].to_s.split(/----/).each

行う:

@a[:log].to_s.split(/----/).reverse.each
于 2012-04-14T14:11:38.660 に答える
2

reverse(メソッドが返す)中間配列が必要ない場合は、がありreverse_eachます。

@a[:log].to_s.split(/----/).reverse_each
于 2012-04-14T15:37:45.450 に答える
1

@a[:log].to_s.split(/----/).reverse.each

于 2012-04-14T14:12:42.333 に答える