У меня этот код:GSUB на месте не работает
Firm.all.each do |firm|
url = firm.site
doc = Nokogiri::HTML(open(url))
data = doc.css("##{firm.menu_id} a")
data.each do |e|
e.text.strip!
e.text.gsub!(/[\n\t]*/,'')
puts e.text
end
end
Строки показываются в том же формате, что и ввод (это означает, метод gsub!
не влияет на строку). Я думаю, что e.text
может быть неизменным, но я хотел бы это сделать.
Что делать, если вас поместите этот e.text в строковую переменную, а затем gsub! Это? – lcguida
Если 'e.text' был« заморожен »(например,' immutable'), то был бы поднят 'RuntimeError'. – ptierno
@rockskull Я пробовал, что вы говорите, и это работает. Я изменил строки для 'text = e.text.strip' и' text.gsub! (/ [\ N \ t] * /, '') 'и это сработало. Но с 'e.text' методы на месте не работают. BTW, RuntimeError не отображается, поэтому, учитывая, что @PeteyT говорит, что 'e.text' является изменяемым. – cizambra