정규식을 사용하여 IP 주소와 도메인 이름을 일치시키는 방법

php中世界最好的语言
풀어 주다: 2018-01-08 11:25:36
원래의
5618명이 탐색했습니다.

완전한 도메인 이름은 루트 도메인, 최상위 도메인, 2단계, 3단계... 도메인 이름으로 구성되며, 각 수준의 도메인 이름은 점으로 구분되고, 각 수준의 도메인 이름은 구성된다는 것을 알고 있습니다. 문자, 숫자 및 빼기 기호(섹션 1) 문자는 빼기 기호가 될 수 없으며 대소문자를 구분하지 않으며 길이는 63자를 초과할 수 없습니다.

단일 이름은 regular표현식[a-zA-Z0-9][-a-zA-Z0-9]{0,62}과 일치할 수 있지만 전체 도메인 이름에는 최소한 두 개가 포함됩니다. 이름(예: google.com, google과 com으로 구성) 끝에 루트 도메인을 나타내는 점이 있을 수 있습니다(사양에서는 끝에 점이 있는 도메인 이름이 완전한 도메인 이름이지만 일반적으로 두 개 이상의 이름을 포함하는 도메인 이름은 뒤에 점이 없더라도 완전한 도메인 이름으로 간주됩니다.

전체 도메인 이름과 일치하는 정규 표현식:

[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?
로그인 후 복사

IP 문자열은 4개의 세그먼트로 구성되며, 각 세그먼트는 0부터 255까지의 숫자이고 세그먼트는 61.139.2.69와 같이 소수점으로 구분됩니다. 유효한 IP 문자열입니다.

 정규 표현식을 d{1,3}(.d{1,3}){3}으로 작성하면 300.400.555.666과 같은 불법 IP 문자열과 일치할 수 있으므로 의심할 여지 없이 무책임합니다.

  0~255 사이의 숫자를 일치시키는 데는 여러 가지 일치 방법이 있습니다. 다음은 그 중 하나입니다.

일치하는 정규식 설명

  0~9 d 단일 숫자
10~99 [1-9] d Two -자리 숫자
100~199 1dd 세 자리 숫자(백의 자리) 1
200~249 2[0-4]d 세 자리 숫자, 백의 자리는 2, 십의 자리는 0~9
  250~255 25[0 -5] 세 자리 숫자, 백의 자리는 2, 십의 자리는 5, 일의 자리는 0~5

 정규식으로 쓰면, 즉, (d|([1-9 ]d)|(1dd)|(2 [0-4]d)|(25[0-5])), 그러나 이러한 정규 표현식이 254와 같은 문자열과 일치하면 각각 2, 5, 4와 일치합니다. , 결과적으로 3개의 일치 항목이 발생하지만 예상 효과를 얻을 수 없습니다. 올바른 방법은 순서를 ((25[0-5])|(2[0-4]d)|(1dd)|([1- 9]d)|d), 왜냐하면 (xxx |yyy) 이 일치 동작 에서 검색 은 왼쪽에서 오른쪽 이기 때문입니다.

 완전한 정규식은 다음과 같습니다.

 ((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d)(\.((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d)){3}
로그인 후 복사

  누르기:

  061과 같이 상위 비트가 0인 숫자는 일치할 수 없습니다.

그러므로 맨 위에 있는 작성 방법(1부)이 정확하고 완전한 버전인 반면, 작성 방법(2부)은 좀 더 일방적입니다

이 글을 읽으신 후에는 방법을 익히셨으리라 믿습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 기타 관련 기사를 주목하세요!

관련 자료:

정규식을 사용하여 JavaScript 코드를 강조하는 방법

정규식 양식 유효성 검사의 예

정규식을 사용하여 전화번호, 휴대폰 번호 및 이메일 주소를 일치시키는 방법

위 내용은 정규식을 사용하여 IP 주소와 도메인 이름을 일치시키는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿