# If you'd like to omit non-matching lines from the result; add ';d' to the end of the expression.
sed -E 's/.*?<li.*?<a href="(\\/release[^"]+)">([^<]+)<\\/a>.*?<\\/li>/$2 https:\/\/www.beatport.com$1\n/gs;t' <<< " <li class=\"bucket-item ec-item horz-release\" data-ec-position=\"87\"
data-ec-type=\"product\"
data-ec-name=\"Perfect Storm\"
data-ec-creative=\"Label - Releases\"
data-ec-brand=\"Interplay Global\"
data-ec-category=\"Releases\"
data-ec-list=\"Label - Releases\"
data-ec-price=\"1.29\"
data-ec-d1=\"David Deere, Brandon Mignacca\">
<div class=\"horz-release-artwork-parent\">
<a href=\"/release/perfect-storm/3265557\">
<img class=\"horz-release-artwork lazy-load\" src=\"https://geo-pro.beatport.com/static/60b2f914842e8b09024754e8a6493b36.png\" data-src=\"https://geo-media.beatport.com/image_size/250x250/cd9e7e36-d598-45c2-a05c-d2e286a0bcb1.jpg\" />
</a>
</div>
<div class=\"horz-release-meta-parent\">
<div class=\"horz-release-meta\">
<p class=\"buk-horz-release-title\"><a href=\"/release/perfect-storm/3265557\">Perfect Storm</a></p>
<p class=\"buk-horz-release-artists\">
<a href=\"/artist/david-deere/31534\" data-artist=\"31534\">David Deere</a>,
<a href=\"/artist/brandon-mignacca/523042\" data-artist=\"523042\">Brandon Mignacca</a>
</p>
<p class=\"buk-horz-release-labels\">
<a href=\"/label/interplay-global/93385\" data-label=\"93385\">Interplay Global</a></p>
<p class=\"buk-horz-release-released\">2021-02-12</p>
</div>
<div class=\"horz-release-actions-parent\">
<div class=\"horz-release-actions\">
<div class=\"horz-release-play-queue\">
<button class=\"playable-play\" data-type=\"release\" data-id=\"3265557\" data-track=\"14824920\">
<svg viewBox=\"0 0 200 200\" class=\"play-icon\">
<use xlink:href=\"/static/4fef40cebd6b915bcbe9695d5d543a01.svg#icon-play\"></use>
</svg>
</button>
<button class=\"playable-queue tooltip-secondary\" data-type=\"release\" data-id=\"3265557\" data-track=\"14824920\">
<svg viewBox=\"0 0 16 11\" class=\"queue-icon\">
<use xlink:href=\"/static/4fef40cebd6b915bcbe9695d5d543a01.svg#icon-add-queue\"></use>
</svg>
<span class=\"tooltiptext\">Add to queue</span>
</button>
</div>
<div class=\"buy-button horz-release-buy-button
\" data-release=\"3265557\" data-price=\"$1.29\" >
<button class=\"add-to-default\">$1.29</button>
<button class=\"launch-menu\">
<div class=\"launch-menu-icon\">
<svg viewBox=\"0 0 200 200\" class=\"icon\">
<use xlink:href=\"/static/4fef40cebd6b915bcbe9695d5d543a01.svg#icon-chevron-down\"></use>
</svg>
</div>
<div class=\"loading-menu-icon\">
<div class=\"icon\"></div>
</div>
</button>
</div>
</div>
<a href=\"#\" class=\"icon icon-ellipsis horz-release-ellipsis mobile-action\"></a>
</div>
</div>
</li>
<li class=\"bucket-item ec-item horz-release\" data-ec-position=\"88\"
data-ec-type=\"product\"
data-ec-name=\"Glasshouse\"
data-ec-creative=\"Label - Releases\"
data-ec-brand=\"Interplay Global\"
data-ec-category=\"Releases\"
data-ec-list=\"Label - Releases\"
data-ec-price=\"1.29\"
data-ec-variant=\"album\"
data-ec-id=\"3265543\"
data-ec-d1=\"Hiski, Milad E\">
<div class=\"horz-release-artwork-parent\">
<a href=\"/release/glasshouse/3265543\">
<img class=\"horz-release-artwork lazy-load\" src=\"https://geo-pro.beatport.com/static/60b2f914842e8b09024754e8a6493b36.png\" data-src=\"https://geo-media.beatport.com/image_size/250x250/d45916cd-e96a-4669-9cd1-d71b28c21258.jpg\" />
</a>
</div>
<div class=\"horz-release-meta-parent\">
<div class=\"horz-release-meta\">
<p class=\"buk-horz-release-title\"><a href=\"/release/glasshouse/3265543\">Glasshouse</a></p>
<p class=\"buk-horz-release-artists\">
<a href=\"/artist/hiski/574515\" data-artist=\"574515\">Hiski</a>,
<a href=\"/artist/milad-e/581122\" data-artist=\"581122\">Milad E</a>
</p>
<p class=\"buk-horz-release-labels\">
<a href=\"/label/interplay-global/93385\" data-label=\"93385\">Interplay Global</a></p>
<p class=\"buk-horz-release-released\">2021-02-05</p>
</div>
<div class=\"horz-release-actions-parent\">
<div class=\"horz-release-actions\">
<div class=\"horz-release-play-queue\">
<button class=\"playable-play\" data-type=\"release\" data-id=\"3265543\" data-track=\"14824888\">
<svg viewBox=\"0 0 200 200\" class=\"play-icon\">
<use xlink:href=\"/static/4fef40cebd6b915bcbe9695d5d543a01.svg#icon-play\"></use>
</svg>
</button>
<button class=\"playable-queue tooltip-secondary\" data-type=\"release\" data-id=\"3265543\" data-track=\"14824888\">
<svg viewBox=\"0 0 16 11\" class=\"queue-icon\">
<use xlink:href=\"/static/4fef40cebd6b915bcbe9695d5d543a01.svg#icon-add-queue\"></use>
</svg>
<span class=\"tooltiptext\">Add to queue</span>
</button>
</div>
<div class=\"buy-button horz-release-buy-button
\" data-release=\"3265543\" data-price=\"$1.29\" >
<button class=\"add-to-default\">$1.29</button>
<button class=\"launch-menu\">
<div class=\"launch-menu-icon\">
<svg viewBox=\"0 0 200 200\" class=\"icon\">
<use xlink:href=\"/static/4fef40cebd6b915bcbe9695d5d543a01.svg#icon-chevron-down\"></use>
</svg>
</div>
<div class=\"loading-menu-icon\">
<div class=\"icon\"></div>
</div>
</button>
</div>
</div>
<a href=\"#\" class=\"icon icon-ellipsis horz-release-ellipsis mobile-action\"></a>
</div>
</div>
</li>"
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 SED, please visit: https://www.gnu.org/software/sed/manual/html_node/The-_0022s_0022-Command.html