정규식 목적은 문자열을 가져 와서 모든 호스트 이름의 목록을 만드는 것입니다. 그러나 그 오른쪽에서 3 개의 점만 가져옵니다.3 개의 도트로 도메인을 일치시키는 정규식
작동하지만 스크립트가 올바른 것이 아니라 호스트 이름의 왼쪽을 선택할 수 있음을 알 수 있습니다.
정규식
((([a-zA-Z0-9]{1,63}|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])\.){1,3}[a-zA-Z]{2,63})
이제
site.com1.site.com2.1.site.com3.2.1.site .COM 4.3.2.1 .site.com 5.4.3.21.site.com
는
site.com1.site.com2.1.site.com 3. 2.1.site.com 4.3
를 수정했습니다. 2.1.site.com 5.4.3. 당신이 그것을 위해 당신의 정규식을 사용하려면 2.1.site.com
바꿀 수'[a-zA-Z0-9]와''로 [\ w ]'또는보다 엄격한'[: alnum :] ' –
\ w에 밑줄이 있으므로 알고 있다고 생각합니다. alnum : "a-zA-Z0-9"와 동일하면 더 좋습니다. – JavaOdd
그렇기 때문에 "엄격한"조건을 사용하려면': alnum :'을 사용해야한다고 말한 것입니다. 그렇지 않으면 URL에서 그렇지 않은 경우 거의 '_'을 찾을 수 없기 때문입니다. '\ w'는 간단히 짧습니다. 왜 당신은 모든 개행을 제거합니까? –