PHP에서 preg_match를 사용할 때 "Unknown Modifier 'g' in...'' 오류 이해
PHP에서 preg_match 함수를 사용할 때 PHP에서 "알 수 없는 수정자 'g'" 오류 메시지가 나타날 수 있습니다. 이 당황스러운 문제는 정규 표현식에서 'g' 수정자를 사용하려고 할 때 발생할 수 있습니다.
정규 표현식의 'g' 수정자는 일반적으로 문자열 내에서 모든 패턴 발생을 찾기 위해 전역 검색에 사용됩니다. 그러나 preg_match와 함께 사용하면 이 수정자가 인식되지 않습니다. preg_match는 'i'만 지원하므로 이러한 불일치의 이유는 PHP 구현의 실수 때문입니다. 및 'm' 수정자.
이 문제를 해결하고 preg_match로 전역 검색을 수행하려면 대신 preg_match_all 함수를 활용해야 합니다. 이 함수는 문자열 내에서 나타나는 모든 패턴을 일치시켜 preg_match의 기능을 확장합니다. 원하는 전역 검색 기능을 제공합니다.
따라서 제공한 코드 조각을 수정하고 전역 검색을 수행하려면 preg_match_all을 사용하도록 preg_match 함수가 포함된 줄을 수정하세요.
preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ....)
다음을 활용하여 preg_match_all을 적절한 수정자로 사용하면 "알 수 없는 수정자 'g' in...'' 오류 메시지를 방지하면서 문자열 내에서 이메일 주소 패턴의 모든 항목을 성공적으로 찾을 수 있습니다.
위 내용은 preg_match가 PHP에서 "알 수 없는 수정자 'g'" 오류를 발생시키는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!