<?php
// CREATE THE STRING
$urls_as_string = 'asd a http://w...content-available-to-author-only...e.com w223 http://e...content-available-to-author-only...e.com/ ion
sipn http://w...content-available-to-author-only...e.com/seconday/somepage#hashes?parameters
opajiw348283 http://w...content-available-to-author-only...e.com/seconday/ 20923[\'#$%#$ http://w...content-available-to-author-only...e.com/seconday ww
we http://e...content-available-to-author-only...e.com/seconday http://e...content-available-to-author-only...e.com/seconday/ 000000
02222 http://d...content-available-to-author-only...d.com/personal-wordpress-blog-themes/ +_)(&^&%$ https://c...content-available-to-author-only...t.com/nikokolev/7993-Kubrat-Responsive-Template oopeo
rop www.tuicool.com/articles/rqAzU3 03083 2h1hh1` html5up.net/overflow/ kksllkwpo2 http://w...content-available-to-author-only...l.com/articles/rqAzU3 la;s
l2i2i3okn2 http://l...content-available-to-author-only...m.au/spotfinder/docs/#ByVCPlik black cat www.designrazzi.com/2013/free-css3-html5-templates/ as
df themeko.org/halsey-v1-1-9-ultimate-business-wordpress-theme/ l
www <a href="http://w...content-available-to-author-only...e.com/questions/124977/how-to-add-qtranslate-multi-language-support-for-media/131971#131971" target="_blank">SE</a>' ;
// SET SOME DOMAIN EXTENSIONS
$extension_array = array ( 'com' , 'net' , 'org' , 'biz' ) ;
// CHECK TO SEE IF OUR REGEX IS WORKING ... PRINT OUT ALL OF THE MATCHES
if ( preg_match_all ( '~(?:(?:http(?:s)?://)?(?:www\.)?[-A-Z0-9.]+(?:\.' . implode ( '|' , $extension_array ) . ')[-A-Z0-9_./]?(?:[-A-Z0-9#?/]+)?)~ims' , $urls_as_string , $m ) ) { }
// USE PREG_REPLACE_CALLBACK TO FORMAT THE URLS
$content = preg_replace_callback ( '~(?:(?:http(?:s)?://)?(?:www\.)?[-A-Z0-9.]+(?:\.' . implode ( '|' , $extension_array ) . ')[-A-Z0-9_./]?(?:[-A-Z0-9#?/]+)?)~ims' , 'my_callback' , $urls_as_string ) ;
// PRINT OUT THE FINISHED STRING
print "\n \n \n \n FINAL OUTPUT: \n " . $content ;
// THIS FUNCTION DOES A CRAPTASTIC JOB AT FORMATTING URLS
function my_callback( $m ) {
$url = $m [ 0 ] ;
$url_formatted = $url ;
$url_formatted = 'http://' . $url ;
}
$url_formatted = '<a href="' . $url . '">' . $url . '</a>' ;
return $url_formatted ;
}
PD9waHAKCi8vIENSRUFURSBUSEUgU1RSSU5HCiR1cmxzX2FzX3N0cmluZyA9ICdhc2QgYSBodHRwOi8vdy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20gdzIyMyBodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vICBpb24Kc2lwbiAgaHR0cDovL3cuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tL3NlY29uZGF5L3NvbWVwYWdlI2hhc2hlcz9wYXJhbWV0ZXJzIAoKCgpvcGFqaXczNDgyODMgaHR0cDovL3cuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tL3NlY29uZGF5LyAyMDkyM1tcJyMkJSMkIGh0dHA6Ly93Li4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5lLmNvbS9zZWNvbmRheSB3dwp3ZSBodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vc2Vjb25kYXkgICAgICAgICAgICAgICBodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vc2Vjb25kYXkvIDAwMDAwMAowMjIyMiBodHRwOi8vZC4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZC5jb20vcGVyc29uYWwtd29yZHByZXNzLWJsb2ctdGhlbWVzLyArXykoJl4mJSQgaHR0cHM6Ly9jLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi50LmNvbS9uaWtva29sZXYvNzk5My1LdWJyYXQtUmVzcG9uc2l2ZS1UZW1wbGF0ZSBvb3Blbwpyb3AgIHd3dy50dWljb29sLmNvbS9hcnRpY2xlcy9ycUF6VTMgMDMwODMgMmgxaGgxYCAgaHRtbDV1cC5uZXQvb3ZlcmZsb3cvIGtrc2xsa3dwbzIgaHR0cDovL3cuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmwuY29tL2FydGljbGVzL3JxQXpVMyAgbGE7cwpsMmkyaTNva24yIGh0dHA6Ly9sLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5tLmF1L3Nwb3RmaW5kZXIvZG9jcy8jQnlWQ1BsaWsgYmxhY2sgY2F0IHd3dy5kZXNpZ25yYXp6aS5jb20vMjAxMy9mcmVlLWNzczMtaHRtbDUtdGVtcGxhdGVzLyBhcwpkZiB0aGVtZWtvLm9yZy9oYWxzZXktdjEtMS05LXVsdGltYXRlLWJ1c2luZXNzLXdvcmRwcmVzcy10aGVtZS8gbCAKIHd3dyA8YSBocmVmPSJodHRwOi8vdy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vcXVlc3Rpb25zLzEyNDk3Ny9ob3ctdG8tYWRkLXF0cmFuc2xhdGUtbXVsdGktbGFuZ3VhZ2Utc3VwcG9ydC1mb3ItbWVkaWEvMTMxOTcxIzEzMTk3MSIgdGFyZ2V0PSJfYmxhbmsiPlNFPC9hPic7CgoKLy8gU0VUIFNPTUUgRE9NQUlOIEVYVEVOU0lPTlMKJGV4dGVuc2lvbl9hcnJheSA9IGFycmF5KCdjb20nLCAnbmV0JywgJ29yZycsICdiaXonKTsKCgoKLy8gQ0hFQ0sgVE8gU0VFIElGIE9VUiBSRUdFWCBJUyBXT1JLSU5HIC4uLiBQUklOVCBPVVQgQUxMIE9GIFRIRSBNQVRDSEVTCmlmIChwcmVnX21hdGNoX2FsbCgnfig/Oig/Omh0dHAoPzpzKT86Ly8pPyg/Ond3d1wuKT9bLUEtWjAtOS5dKyg/OlwuJy5pbXBsb2RlKCd8JywgJGV4dGVuc2lvbl9hcnJheSkuJylbLUEtWjAtOV8uL10/KD86Wy1BLVowLTkjPy9dKyk/KX5pbXMnLCAkdXJsc19hc19zdHJpbmcsICRtKSkgewogICAgcHJpbnRfcigkbSk7Cn0KCgoKLy8gVVNFIFBSRUdfUkVQTEFDRV9DQUxMQkFDSyBUTyBGT1JNQVQgVEhFIFVSTFMKJGNvbnRlbnQgPSBwcmVnX3JlcGxhY2VfY2FsbGJhY2soICd+KD86KD86aHR0cCg/OnMpPzovLyk/KD86d3d3XC4pP1stQS1aMC05Ll0rKD86XC4nLmltcGxvZGUoJ3wnLCAkZXh0ZW5zaW9uX2FycmF5KS4nKVstQS1aMC05Xy4vXT8oPzpbLUEtWjAtOSM/L10rKT8pfmltcycsICdteV9jYWxsYmFjaycsICR1cmxzX2FzX3N0cmluZyk7CgoKCi8vIFBSSU5UIE9VVCBUSEUgRklOSVNIRUQgU1RSSU5HCnByaW50ICJcblxuXG5cbkZJTkFMIE9VVFBVVDogXG4iLiRjb250ZW50OwoKCgovLyBUSElTIEZVTkNUSU9OIERPRVMgQSBDUkFQVEFTVElDIEpPQiBBVCBGT1JNQVRUSU5HIFVSTFMKZnVuY3Rpb24gbXlfY2FsbGJhY2soJG0pIHsKCgkkdXJsID0gJG1bMF07CgkkdXJsX2Zvcm1hdHRlZCA9ICR1cmw7CgoJaWYgKCFwcmVnX21hdGNoKCd+Xmh0dHAocyk/Oi8vficsICR1cmwpKSB7CgkJJHVybF9mb3JtYXR0ZWQgPSAnaHR0cDovLycuJHVybDsKCX0KCgkkdXJsX2Zvcm1hdHRlZCA9ICc8YSBocmVmPSInLiR1cmwuJyI+Jy4kdXJsLic8L2E+JzsKCglyZXR1cm4gJHVybF9mb3JtYXR0ZWQ7Cgp9