2013-06-15 2 views
0

이것이 정규 표현식과 관련이 있다고 생각했지만 지금까지는 해결책이 애매한 것으로 입증되었습니다. 시나리오는 다음과 같습니다. URL의 하위 도메인 부분은 캡처하지만 "www"는 캡처하지 않습니다. 존재한다면, 예를 들어. 가정 이러한 URL정규식을 사용하여 URL에서 하위 도메인을 반환하려면 어떻게해야합니까?

중 하나

www.mysubdomain.mydomain.com
mysubdomain.mydomain.com

내가 표현은 mysubdomain 돌아가려면 - 어떤 점을!

+1

많은 질문에 대한 답변 http://stackoverflow.com/questions/1189128/regex-to-extract-subdomain-from-u rl 또는 http://stackoverflow.com/questions/4093806/regexp-to-match-domain-and-subdomains-in-java –

+1

및 하위 도메인의 하위 도메인이있는 경우 'subdomain.domain.co.uk'과 같은 것은 무엇입니까? – Beat

+0

@Beat 두 번째 상황은 신경 쓰지 않아요. 특정 .com 도메인 용입니다. 하위 도메인의 하위 도메인과 마찬가지로 - 내가 틀렸을지라도 나를 정정하십시오. 그러나 첫 번째 예에서 "www"가 무엇인지는 모르겠습니다. 어쨌든 "www"는 내가 관심있는 하위 도메인의 유일한 사용 사례이며, 나는 그것을 제거하고 싶습니다. – fatman45

답변

2

지원이 사용하는 언어는 lookbehind이 사용할 수있는 경우는,이 ​​사용하지 않는 경우

(?<=^www\.|^)[^.]+ 

을 :

^(?:www\.)?([^.]+) 

를하고 결과는 첫 번째 캡처 그룹, 예에 자바 스크립트 :

var mystring = 'www.mysubdomain.mydomain.com'; 
var match = /^(?:www\.)?([^.]+)/.exec(myString); 
console.log(match[1]); 
+0

고마워요.하지만 저는 두 명의 다른 온라인 Regex 테스터 (RegEx Pal) (http://regexpal.com/)와 [JRX] (http://www.cuneytyilmaz.com/prog/jrx/jrx.nongecko .html) 그리고 첫 번째 구문은 전혀 작동하지 않으며, 두 번째 구문은 내가 원하는 것을 수행하지 않습니다. 또한 "www."를 반환합니다. – fatman45

+2

@ user2479894 : 첫 번째 패턴은 정상이며 javascript는 둘러보기 기능이 없습니다. 두 번째 패턴은'www.subdomain'도 반환합니다. 보통이지만'subdomain' 만 포함하는 첫 번째 캡처 그룹을 결과에서 추출 할 수 있습니다 –

+0

+1 단순하고 우아합니다 –

관련 문제