아래 소스를 실행하면, 'www', 'http' 여부와 상관없이 모두 링크로 수정됩니다만, 문제는 일반 텍스트까지 전부 변환됩니다..
→ ex) test http://Comment http://테스트 http://댓글 http://www.daum.net http://daum.net http://www.daum.net http://daum.net http://www.naver.com http://naver.com http://www.naver.com http://naver.com
이 부분 해결하기 위해서는 어떻게 하면 좋을지 자문 부탁드립니다.
→ ex) test http://Comment http://테스트 http://댓글 http://www.daum.net http://daum.net http://www.daum.net http://daum.net http://www.naver.com http://naver.com http://www.naver.com http://naver.com
이 부분 해결하기 위해서는 어떻게 하면 좋을지 자문 부탁드립니다.
Copy
$str = "test Comment 테스트 댓글 www.daum.net daum.net http://www.daum.net http://daum.net http://www.naver.com http://naver.com www.naver.com naver.com";$str = preg_replace("/(^|[\"'\s(])([^\"'\s(https?:\/\/)]+)/i", " http://\\2</A>", $str); echo $str;
|
답변 1개
채택된 답변
+20 포인트
이렇게 나오면 되는건가요?
Copy
$str = "test Comment 테스트 댓글 www.daum.net daum.net http://www.daum.net http://daum.net http://www.naver.com http://naver.com www.naver.com naver.com";$text= preg_replace('@((https?://)?([-\w]+\.[-\w\.]+)+\w(:\d+)?(/([-\w/_\.]*(\?\S+)?)?)*)@', '<a href="$1" target="blank">$1</a>', $str); echo $text;/*RESULTtest Comment 테스트 댓글 <a href="www.daum.net" target="blank">www.daum.net</a> <a href="daum.net" target="blank">daum.net</a> <a href="http://www.daum.net" target="blank">http://www.daum.net</a> <a href="http://daum.net" target="blank">http://daum.net</a> <a href="http://www.naver.com" target="blank">http://www.naver.com</a> <a href="http://naver.com" target="blank">http://naver.com</a> <a href="www.naver.com" target="blank">www.naver.com</a> <a href="naver.com" target="blank">naver.com</a> */
답변을 작성하려면 로그인이 필요합니다.