2013-02-06 1 views
1

자바에 대한 절대 URL과 관련 UR1을 모두 검증하는 정규식이 있습니까?절대 및 상대 URl에 대한 자바 스크립트

나는 HTTP 부분을 필수로 만들고있는 부분을 제외하고 절대 URL에 대해 꽤 잘 작동하는 다음 Regex를 가지고있다. 나는 그것을 선택적으로 원한다.

/(http|ftp|https):\/\/[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\[email protected]?^=%&\/~+#-])?/; 

감사

+0

상대 URL은 기본적으로 무엇이든 될 수 있으므로 유효성을 검사하는 데 어려움을 겪을 수 있습니다. –

답변

1

신속한 답변 옵션 부분을 아룬의 답변을 수정 '/ page', '/ page/subpage', 'page/subpage'를 허용하려면

/(\/?[\w-]+)(\/[\w-]+)*\/?|(((http|ftp|https):\/\/)?[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\[email protected]?^=%&\/~+#-])?)/gi 

실제로 실제로는 정규식이 정규식이 아닌 것으로 확인하십시오. ./page ','../page '등과 같은 많은 엣지 경우

주요 요구 사항을 신중하게 분석하고 주요 테스트 사례를 적어보고 RegExp를 모두 작성하십시오. 성능에주의하십시오.

+0

어떤 이유로 자바 스크립트 편집기는이 문자열을 유효한 Regex로 인식하지 못합니다. – TeaLeave

+0

와우, 나는 텍스트 부분을 게시했습니다. 각면에'/'를 추가해야합니다. 이미 답변을 업데이트했습니다. –

+0

실제로이 새로운 것을 이전의 것으로 대체 했으므로 여기서 문제는 무엇이든 걸린다는 것입니다. 또한 평범한 텍스트를 유효한 URL로 받아 들일 것입니다. (( – TeaLeave

3

그것은 (http|ftp|https):\/\/ (HTTP : //)하게

/((http|ftp|https):\/\/)?[\w-]+(\.[\w-]+)+([\w.,@?^=%&:\/~+#-]*[\[email protected]?^=%&\/~+#-])?/; 

을 시도해보십시오 여기

이 정규식입니다

+0

예, HTTp 부분을 선택 사항으로 설정했지만 관련 경로를 받아들이지 않아 acceprt www.google.com does not accept \ page – TeaLeave