정규식을 사용하여 주어진 문자열이 IP 주소인지 아닌지 확인하고 싶습니다. 내 첫 번째 아이디어는 이었지만 그 다음에는 역 참조가 캡처 그룹의 결과를 참조하고 있음을 기억했습니다. 그래서 내 솔루션은 192.192.192.192
, 168.168.168.168
또는 178.178.178.178
과 같은 IP 주소에서 작동합니다. 캡쳐 그룹의 결과를 참조하는 대신 캡쳐 그룹의 정규식을 참조하는 다른 유형의 역 참조가 있습니까?([0-2][0-9]{1,2}|[0-9]{1,2})\.
을 네 번 연속 사용하는 것보다 더 좋은 방법이 있습니까? 또는 .NET Framework에서 문자열인지 여부를 확인하는 함수가 IP인지 여부는 무엇입니까?캡쳐 된 결과 대신 캡쳐 그룹에 대한 역 참조
답변
당신은 내가, 당신은 내 질문이 중복 말할 수 있습니다,하지만 난 좀 더 일을 물어 생각
논리적으로 들리지만이 함수는 '192'또는 '192.168'과 같은 문자열을 IP로보고 그 값을 true로 반환합니다. – Cubinator73
@ Cubinator73 링크 된 답변의 주석을 읽으십시오. 위의 메소드를'192.168.1.1 ".Count (x => x == '.') == 3;' – EZI
으로 조합 할 수도 있습니다. – Cubinator73
을하지 않았다 사용할 수 있습니까? – Cubinator73