3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $text = 'qwe <a href="/asd/ghj/wer.html">123</a>, qwe <a href="http://www.arrivo.ru/asdwer.html">123</a>, <a href=\'http://www.arrivo.ru/asdwer.html\'>123</a>, qwe <a title="http://arrivo.ru/123.html" href=//arrivo.ru/w/sd/ger.html title="http://arrivo.ru/123.html">123</a> <a title="http://arrivo.ru/123.html" href=//arrivo.ru/w/sd/ger.html>123</a>, qwe <a href=http://yandex.ru/index.html title="smth">123</a>, qwe <a href="/smth/else">123</a>, http://www.arrivo.ru/nooo.html :)'; $text = preg_replace('#href(\s*)=(\s*)(|"|\')(\s*)((http:|https:)?//(www\.)?arrivo\.ru)/(.+)\.html(.+)(>|\s|"|\')#isU', 'href$1=$2$3$4$5/$8$9$10', $text); $text = preg_replace('#href(\s*)=(\s*)(|"|\')(\s*)(/[^/])/(.+)\.html(.+)(>|\s|"|\')#isU', 'href$1=$2$3$4$5/$6$7$8', $text); echo $text;
based on f6ZZC
Output for 4.3.0 - 7.2.0
qwe <a href="/asd/ghj/wer.html">123</a>, qwe <a href="http://www.arrivo.ru/asdwer">123</a>, <a href='http://www.arrivo.ru/asdwer'>123</a>, qwe <a title="http://arrivo.ru/123.html" href=//arrivo.ru/w/sd/ger title="http://arrivo.ru/123.html">123</a> <a title="http://arrivo.ru/123.html" href=//arrivo.ru/w/sd/ger>123</a>, qwe <a href=http://yandex.ru/index.html title="smth">123</a>, qwe <a href="/smth/else">123</a>, http://www.arrivo.ru/nooo.html :)