ip 주소를 검색하는 정규식을 작성

IPv4 주소를 찾기 위한 기본 정규식은 \b\d{1,3}(\.\d{1,3}){3}\b 형태로 작성할 수 있으며, Eclipse 찾기(Find) 창에서는 역슬래시를 한 번만 쓰면 됩니다.

간단한 IPv4 검색용 정규식

Eclipse의 “Search → File Search → Regular expression”에서 IPv4 형태의 문자열(예: 192.168.0.1)을 찾고 싶다면 다음 패턴을 사용할 수 있습니다.

  • 정규식:
    \b\d{1,3}(\.\d{1,3}){3}\b

    • 의미

      • \b : 단어 경계

      • \d{1,3} : 1~3자리 숫자

      • (\.\d{1,3}){3} : 점과 숫자 3자리 그룹을 3번 반복

이 패턴은 “숫자.숫자.숫자.숫자” 형태를 모두 찾아주며, 각 옥텟이 0~999까지 허용되므로 형식 검사용보다는 검색/하이라이트용에 적합합니다.

0~255 범위까지 엄밀히 체크

각 옥텟이 0~255 범위인 유효한 IPv4 주소만 찾고 싶다면 더 엄격한 패턴을 쓸 수 있습니다.

  • 정규식 예시:
    \b((25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\b

    • 각 부분은 다음 숫자 범위를 의미합니다.

      • 25[0-5] : 250–255

      • 2[0-4]\d : 200–249

      • 1\d{2} : 100–199

      • [1-9]?\d : 0–99

이 패턴은 “999.999.999.999” 같은 값은 매치하지 않고, 실제 IPv4 범위 내의 주소만 매치합니다.

Eclipse/Java 문자열에서 쓸 때 주의점

Eclipse “찾기/검색” 대화상자에서 사용하는 정규식과 Java 코드 안의 문자열 리터럴은 역슬래시 개수가 다릅니다.

  • Eclipse Find/Replace에서 직접 입력:

    • 그대로: \b\d{1,3}(\.\d{1,3}){3}\b

  • Java 코드의 문자열 리터럴로 쓸 때:

    • 역슬래시를 한 번 더 이스케이프:

      • "\\b\\d{1,3}(\\.\\d{1,3}){3}\\b"

Eclipse에서 단순 검색용이라면 이스케이프를 한 번만 사용하면 되고, Java 코드에서 Pattern/Matcher로 사용할 때는 이스케이프를 두 번 써야 한다는 점만 구분하면 됩니다.

url 를 검색하는 정규식을 작성

URL을 검색하는 정규식은 프로토콜(http/https)과 도메인 형태를 중심으로 구성되며, Eclipse File Search에서 Regular expression 옵션을 활성화하고 사용합니다.

기본 URL 검색용 정규식

Eclipse에서 간단히 http/https로 시작하는 URL을 찾으려면 다음 패턴을 입력하세요.

  • \b(https?|ftp)://[^\s<>"]+[^\s<>".]

    • https? : http 또는 https

    • :// : 프로토콜 구분자

    • [^\s<>"]+ : 공백, <>”을 제외한 문자 1개 이상

    • 마지막 [^\s<>".] : URL 끝맺음 문자

이 패턴은 “https://example.com/path” 같은 문자열을 정확히 매치합니다.

www. 포함 URL 검색

www.로 시작하는 도메인도 포함하려면 확장된 패턴을 사용하세요.

  • \b(https?://)?[w]{3}\.?[a-zA-Z0-9][^\s<>"]+

    • (https?://)? : http(s) 프로토콜 옵션

    • [w]{3}\.? : www. (점 옵션)

    • 나머지 도메인/경로 매치

www.example.com”이나 “https://www.example.com” 모두 찾습니다.

Eclipse 사용 팁

Search → File → Regular expression 체크 후 패턴 입력.

구분 Eclipse 직접 입력 Java 코드 문자열
기본 URL \b(https?|ftp):// ftp)://[^\s<>”]+` 
www 포함 \b(https?://)?www\.[^\s<>"]+  "\\b(https\\?://)?www\\.[^\\s<>\\"]+" 

Java 코드에서 Pattern.compile() 사용할 때는 역슬래시를 두 번 이스케이프해야 합니다.