re = /({{(.*?)".+".+\|.+\btranslate\b(.*?)}}|\btranslate\b="(.*?)")/
str = ' <div class="sp-beta-box">
<p class="text-confirm txt-blanc" translate="BI_BOX_TITLE"></p>
<p class="text-big"> </p>
<p class="text-large txt-blanc" translate="BI_BOX_INFOS"></p>
<p class="text-large"> </p>
<p class="text-big txt-blanc" translate="BI_BOX_MSG"></p>
</div>
<div>
<h4 class="txt-blanc" translate="BI_FORM_TITLE"></h4>
</div>
<div class="sp-connect-form txt-blanc">
<div>
<div class="form-label"><p class="text-normal txt-middle">{{"BI_FLD_NAME" | translate}} * :</p></div>
'
# 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