スキャン結果の要素から割り当てられた文字列から文字を正規表現しようとしています。一致を使用しようとしていますが、変数が配列であると不平を言っています。trash
なぜ " " が配列と見なされているのか、私は混乱しています。
test = 'class="date">B=oddTu Q='
array = test.scan(/([A-Z])=/)
puts array
trash = array.last
trash.to_s
puts trash
if /Q/.match(trash)
puts $1
end
そして、これは私が見ている結果です
C:\Ruby>scratch.rb
class="date">B=oddTu Q=
B
Q
Q
C:/Ruby/scratch.rb:14:in match: can't convert Array to String (TypeError)
from C:/Ruby/scratch.rb:14:in `<main>'
編集: scan は配列の配列を返すため、trash = array.last を実行すると、trash は 1 レベルから 1 配列に取り除かれます。Trash = Trash[0] を実行すると、文字列になります。