URL 일치를 위한 향상된 정규식
사용자 입력에서 URL을 감지하고 구문 분석할 때 효과적인 정규식을 사용하는 것이 중요합니다. 귀하의 경우 현재 표현식은 일부 URL 형식을 캡처하지만 www.google.com과 같은 명시적인 프로토콜 체계가 없는 URL은 설명하지 못합니다.
수정된 정규 표현식
이 문제를 해결하고 포괄적인 URL 일치를 보장하려면 다음과 같이 개정된 정규식을 사용하는 것이 좋습니다. 표현식:
^(?=\S{1,255}$)(https?://)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)
정규식 분석
이 수정된 정규식은 더 적습니다. 제한적이며 www.google.com과 같은 URL은 물론 명시적인 프로토콜(예: http://www.stackoverflow.com).
구현예(JavaScript)
const regex = new RegExp(/(?=\S{1,255}$)(https?://)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)g); const url = 'www.google.com'; if (url.match(regex)) { console.log("URL successfully matched."); } else { console.log("URL did not match."); }
위 내용은 URL을 보다 효과적으로 일치시키기 위해 정규식을 어떻게 개선할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!