> 백엔드 개발 > PHP 튜토리얼 > 실제 PHP 정규 표현식: 파일 이름 일치

실제 PHP 정규 표현식: 파일 이름 일치

WBOY
풀어 주다: 2023-06-23 13:18:02
원래의
2414명이 탐색했습니다.

PHP 정규식 연습: 파일 이름 일치

정규식은 강력한 텍스트 처리 도구입니다. PHP와 함께 제공되는 정규식 기능은 패턴 일치 및 교체를 위한 다양한 방법을 제공합니다. 파일을 처리하는 동안 파일 이름을 기반으로 필터링하고 작업해야 하는 경우가 종종 있습니다. 이 목표는 정규식을 사용하여 쉽게 달성할 수 있습니다.

  1. 파일 이름 확장자 일치

먼저 파일 이름에서 확장자를 추출해야 합니다. PHP에서는 pathinfo 함수를 사용하여 경로를 디렉터리, 파일 이름, 확장명 등의 부분으로 분해할 수 있습니다. 그러나 파일 이름의 확장자 부분만 추출해야 하는 경우 정규식을 사용하여 이를 달성할 수 있습니다.

다음 정규 표현식을 사용하여 파일 이름의 확장자 부분을 일치시킬 수 있습니다.

preg_match('/.(?!.*/)([^./]+)$/', $filename, $matches);
로그인 후 복사

역방향 예측은 정규 표현식에서 사용되며, 슬래시와 소수점이 뒤에 오지 않는 모든 문자와 일치합니다. 이렇게 하면 파일 경로의 소수점이 아닌 마지막 소수점 이하 부분만 일치하게 됩니다. 일치하는 결과는 $matches 배열에 저장되며 $matches[1]을 통해 일치하는 확장자를 얻을 수 있습니다.

예를 들어 photo.jpg라는 파일의 경우 위 정규식을 사용하여 확장자로 jpg를 추출합니다.

  1. 특정 파일 이름 일치

다음으로 정규식을 사용하여 특정 파일 이름 형식을 일치시킬 수 있습니다. 예를 들어 날짜로 시작하고 뒤에 4자리 숫자가 이어지는 사진 파일 이름을 일치시키려면 다음 정규식을 사용할 수 있습니다.

preg_match('/^d{8}-d{4}.jpg$/', $filename, $matches);
로그인 후 복사

정규식에서 시작 및 끝 앵커를 사용하여 일치하는 파일이 있는지 확인합니다. 이름은 8자리로 시작해야 합니다. 숫자, 밑줄, 4자리, .jpg 조합으로 끝납니다. 일치 결과는 $matches 배열에 저장됩니다. 일치하는 항목이 없으면 $matches는 빈 배열입니다.

예를 들어 20210101-1145.jpg라는 파일의 경우 위 정규식을 사용하면 성공적으로 일치할 수 있습니다.

  1. 여러 파일 이름 형식 일치

마지막으로 정규식을 사용하여 다양한 형식의 여러 파일 이름을 일치시킬 수 있습니다. 예를 들어, .jpg, .png 및 .gif 확장자를 포함하는 파일 이름을 일치시키려면 다음 정규식을 사용할 수 있습니다.

preg_match('/.(jpg|png|gif)$/', $filename, $matches);
로그인 후 복사

정규식은 문자 집합과 캡처 그룹을 사용하여 . jpg, .png 또는 .gif로 끝나는 부분입니다. 일치하는 결과는 $matches 배열에 저장됩니다. 일치하는 항목이 없으면 $matches는 빈 배열입니다.

예를 들어, photo.jpg라는 파일의 경우 위의 정규식을 사용하면 성공적으로 일치시킬 수 있습니다. 마찬가지로, logo.png 및 배너.gif라는 파일도 성공적으로 일치시킬 수 있습니다.

결론

파일 처리에서 정규 표현식을 사용하면 파일 이름을 쉽게 일치시키고 조작할 수 있습니다. 이 문서에서는 정규식을 사용하여 파일 이름 확장명, 특정 파일 이름 형식 및 여러 파일 이름 형식을 일치시키는 방법을 설명하고 해당 샘플 코드를 제공합니다. 이러한 기술을 이해하고 숙달하면 문서 처리의 효율성과 정확성을 향상시킬 수 있습니다.

위 내용은 실제 PHP 정규 표현식: 파일 이름 일치의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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