정규식 "d "를 사용하여 문자열이 숫자인지 확인하려고 하면 다음과 같은 결과가 발생할 수 있습니다. 패턴이 "78.46.92.168:8000"과 같은 IP 주소와도 일치한다는 사실이 발견되었습니다. "d"는 숫자에만 일치한다고 예상할 수 있으므로 혼란스러울 수 있습니다. 이것이 발생하는 이유를 이해하려면 "d"의 동작을 이해해야 합니다.
"d" 문자 클래스는 모든 문자 클래스와 일치합니다. ASCII 범위(0-9) 내의 한 자리 문자입니다. " " 수량자는 이전 요소(이 경우 "d")가 한 번 이상 나타나는 것을 나타내며, "d "가 하나 이상의 숫자 시퀀스와 일치함을 나타냅니다.
예제 문자열 "78.46. 92.168:8000", 시퀀스 "78"은 "d"에 대한 유효한 일치입니다. 전체 문자열이 아닌 처음 78개와 일치합니다. 일치가 성공하면 코드는 doStuff()를 호출합니다.
전체 문자열을 일치시키고 숫자만 포함하는지 확인합니다. , 보다 구체적인 정규식 패턴을 사용해야 합니다.
위 내용은 정규식 '\d'가 숫자만 일치하는 대신 '78.46.92.168:8000'과 같은 IP 주소와 일치하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!