Дано:
frag = Nokogiri::XML.fragment('<fld-21 dx-version="ICD10" dx1="H90.5" dx2="I25.9" dx3="I25.3" dx4="" dx5="" dx6="" dx7="" dx8="" dx9="" dx10="" dx11="" dx12=""/>')
Если у вас есть несколько элементов и несколько возможных атрибутов, вы можете сделать:
frag.css('fld-21').map do |node|
node.attributes.select do |key, attr|
key =~ /dx\d+/ && attr.value == "H90.5"
end.keys
end
Возвращает:
[["dx1"]]
В противном случае выможно использовать .at
вместо .css
и .detect
вместо .select
.