PHP에서 preg_match_all() 함수를 사용하는 방법

Phpeseo Preg Match All Hamsuleul Sayonghaneun Bangbeob



preg_match_all() 문자열의 특정 패턴을 일치시키는 데 사용되는 PHP의 내장 함수입니다. 이 함수를 사용하여 정규식 일치를 수행하고 문자열에서 데이터를 추출할 수 있습니다. 여러 번 나타나는 패턴을 검색해야 하는 경우 시간과 노력을 절약할 수 있으며 PHP의 텍스트 구문 분석 및 데이터 추출 응용 프로그램에서 널리 사용됩니다.

통사론

다음은 preg_match_all PHP에서:







preg_match_all ( 무늬 , 입력 , 성냥 , 깃발 , 오프셋 )

그만큼 preg_match_all 다음 매개변수를 수락합니다. 3개는 필수 매개변수이고 2개는 선택사항입니다.



  • 무늬 : 필수 매개변수입니다. 여기에는 검색해야 하는 정규식이 포함되어 있습니다.
  • 입력 : 두 번째는 검색이 수행되는 문자열이므로 필수 매개변수이기도 합니다.
  • 성냥 : 모든 일치 항목을 포함하는 배열에 출력을 저장합니다.
  • 깃발 : 검색 또는 일치 배열이 어떻게 구성되어 있는지 설명합니다. 기능 검색 동작을 수정합니다. 다음 플래그를 사용할 수 있습니다.
  • 오프셋 : 검색의 시작 위치를 지정하는 선택적 매개변수입니다.
깃발 설명
PREG_PATTERN_ORDER 결과 배열에는 정규식의 각 요소에 대한 배열의 모든 일치 항목이 있습니다.
PREG_SET_ORDER 일치 배열의 요소는 각각 문자열에서 찾은 일치 항목 중 하나에 대한 모든 그룹의 일치 항목을 포함합니다.
PREG_OFFSET_CAPTURE 제목 문자열에서 해당 바이트 오프셋 위치와 일치하는 항목을 반환합니다.
PREG_UNMATCHED_AS_NULL 일치하지 않는 패턴은 NULL로 보고됩니다.

예 1

다음 사용 예를 고려하십시오. preg_match_all() PHP에서 함수. 이 코드에서는 단어를 검색합니다. 리눅스 문자열에서. 이 함수는 단어에 대해 찾은 일치 수를 출력합니다. 리눅스 :





$문자열 = '안녕하세요 Linux 애호가 여러분, LinuxHint에 오신 것을 환영합니다!' ;

$패턴 = '/리눅스/' ;

$matches = 정렬 ( ) ;

preg_match_all ( $패턴 , $문자열 , $matches ) ;

print_r ( $matches [ 0 ] ) ;

?>





예 2

이 예제 코드에서는 문자열에서 단어 E를 검색합니다. 작은 i는 대소문자를 구분하지 않고 검색하는 데 사용됩니다. 단어 E 또는 e의 모든 문자열 항목을 반환합니다.



$문자열 = '미국에 오신 것을 환영합니다.' ;

$패턴렉스 = '/이/이' ;

$matchFound = preg_match_all ( $패턴렉스 , $문자열 , $matches ) ;

만약에 ( $matchFound ) {

에코 '<전>' ;

print_r ( $matches ) ;

}

?>



예 3

검색 중인 패턴이 문자열에 없으면 함수는 오류를 나타내는 false를 반환합니다. 이를 처리하기 위해 if-else 문을 사용할 수 있습니다. 패턴을 찾을 수 없으면 else 문을 사용하여 메시지를 인쇄하여 사용자에게 패턴을 찾을 수 없음을 알릴 수 있습니다.



$문자열 = 'PHP는 대중적인 스크립팅 언어입니다.' ;

$패턴렉스 = '/오줌/' ;

$matchFound = preg_match_all ( $패턴렉스 , $문자열 , $matches ) ;

만약에 ( $matchFound ) {

에코 '<전>' ;

에코 '일치하는 항목을 찾았습니다.' ;

print_r ( $matches ) ;

} 또 다른 {

에코 '일치하는 항목이 없습니다.' ;

}

?>

메모 : <예비> 위 코드의 태그는 출력 형식을 지정하는 데 사용됩니다.

결론

정규식은 PHP에서 텍스트를 검색하고 조작하기 위한 강력한 도구입니다. 그만큼 preg_match_all() function은 문자열에 대한 정규식 일치를 수행하고 패턴의 모든 항목을 검색하는 데 사용되는 내장 PHP 함수이며 패턴이 존재하지 않으면 false를 반환합니다. 이해 preg_match_all() 기능은 사용자가 PHP에서 텍스트 데이터를 더 잘 처리하고 처리하는 데 도움이 됩니다.