URL 파일을 구문 분석하여 호스트와 URI 부분을 가져 오지만 URL이 슬래시로 끝나지 않은 경우 버그가 있습니다.C# URL Regex 버그
C# 코드 :
var URL = Regex.Match(link, @"(?:.*?//)?(.*?)(/.*)", RegexOptions.IgnoreCase);
입력 :
//cdn.sstatic.net/stackoverflow/img/favicon.ico
/opensearch.xml
http://stackoverflow.com/
http://careers.stackoverflow.com
출력 : http://careers.stackoverflow.com :
//cdn.sstatic.net/stackoverflow/img/favicon.ico has 2 groups:
cdn.sstatic.net
/stackoverflow/img/favicon.ico
/opensearch.xml has 2 groups:
/opensearch.xml
http://stackoverflow.com/ has 2 groups:
stackoverflow.com
/
http://careers.stackoverflow.com has 2 groups:
http:
//careers.stackoverflow.com
출력의 모든 URL가 exept 유효합니다. 어떻게하면 "슬래시가 있다면, 처음에 멈추고 모든 것을 잡아라"와 같은 가변 부분을 확인할 수 있습니다.
와우, 작동! – Naster