Rumah >pembangunan bahagian belakang >tutorial php >PHP 正则表达式,该如何解决

PHP 正则表达式,该如何解决

WBOY
WBOYasal
2016-06-13 12:06:56892semak imbas

PHP 正则表达式
请问现在有字段$a=https://www.baidu.com
aaaaaa
https://www.163.com

请问如何使用正则表达式截取字段,使https://www.baidu.com 和https://www.163.com变为https://www.baidu.com 这种样子的超链接
------解决思路----------------------

<br />$a="https://www.baidu.com<br>aaaaaa<br>https://www.163.com<br>";<br /><br />$ret= preg_replace(<br />'/((news<br><font color='#FF8000'>------解决思路----------------------</font><br>telnet<br><font color='#FF8000'>------解决思路----------------------</font><br>nttp<br><font color='#FF8000'>------解决思路----------------------</font><br>file<br><font color='#FF8000'>------解决思路----------------------</font><br>http<br><font color='#FF8000'>------解决思路----------------------</font><br>ftp<br><font color='#FF8000'>------解决思路----------------------</font><br>https):\/\/)(([-A-Za-z0-9]+(\.[-A-Za-z0-9]+)*(\.[-A-Za-z]{2,5}))<br><font color='#FF8000'>------解决思路----------------------</font><br>([0-9]{1,3}(\.[0-9]{1,3}){3}))(:[0-9]*)?(\/[-A-Za-z0-9_\$\.\+\!\*\(\),;:@&=\?\/~\#\%]*)*/',<br />'<a href="\0">\0</a>',$a);<br /><br />echo $ret;<br />?>


url的正则可以换个更好的
------解决思路----------------------
<br />$a='https://www.baidu.com<br>aaaaaa<br>https://www.163.com<br>';<br />$new=preg_replace('/((https<br><font color='#FF8000'>------解决思路----------------------</font><br>http):\/\/[^<]+)/i',"<a href=\"$1\">$1</a>",$a);<br />echo $new;<br />/*<br /><a href="https://www.baidu.com">https://www.baidu.com</a><br>aaaaaa<br><a href="https://www.163.com">https://www.163.com</a><br><br />*/<br />

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php如何做接口?思想是什么Artikel seterusnya:这么写正则为啥呢