> 백엔드 개발 > PHP 튜토리얼 > PHP와 정규식을 사용하여 텍스트에서 URL을 효율적으로 추출하려면 어떻게 해야 합니까?

PHP와 정규식을 사용하여 텍스트에서 URL을 효율적으로 추출하려면 어떻게 해야 합니까?

DDD
풀어 주다: 2024-12-14 12:59:14
원래의
152명이 탐색했습니다.

How Can I Efficiently Extract URLs from Text Using PHP and Regular Expressions?

PHP의 텍스트에서 효율적인 URL 추출

쿼리

정규식을 사용하여 다음 텍스트에서 URL을 추출합니다. preg_match():

$string = "this is my friend's website http://example.com I think it is coll";
로그인 후 복사

답변

제공된 문자열에서 URL을 추출하려면 정규식을 활용하는 것이 적합한 접근 방식입니다. 효과적인 정규식 패턴 중 하나는 다음과 같습니다.

preg_match_all('#\bhttps?://[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/))#', $string, $match);
로그인 후 복사

이 정규식은 "http" 또는 "https"로 시작하고, 공백이나 특수 문자 없이 도메인을 포함하고, 선택적으로 매개변수나 경로 정보를 포함하도록 하여 유효한 URL과 일치합니다.

그러나 고려해야 할 한계가 있습니다. "http://google:ha.ckers.org"와 같은 잘못된 URL은 이 패턴으로 완전히 필터링되지 않을 수 있습니다.

또는 다음 WordPress 기능을 활용할 수도 있습니다.

make_clickable($string);
로그인 후 복사

이 기능은 일반 텍스트를 클릭 가능한 URL이 포함된 형식화된 문자열로 변환하도록 특별히 설계되었으며 강력한 URL 추출 방법을 제공합니다.

위 내용은 PHP와 정규식을 사용하여 텍스트에서 URL을 효율적으로 추출하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿