re = /\,id::([^}]*?)::]]><\/string2>/m
str = '[...]
<item1>
<string1>sometext</string1>
<string2><![data[text1, text2,id::aR0sddcsb3NoaQ=::]]></string2>
<string3>sometext</string3>
<item1>
<item2>
<string1>sometext</string1>
<string2><![data[text1, text2,id::furmdjd73ks=::]]></string2>
<string3>sometext</string3>
<item2>
<item3>
<string1>sometext</string1>
<string2><![data[text1, text2,id::h6eefvndjd73ks=::]]></string2>
<string3>sometext</string3>
<item3>
[...]'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html