이 글은 PHP 정규 표현식에 포함된 preg_match 함수와 preg_match_all 함수를 분석하고 소개합니다. 도움이 필요한 친구들이 참고할 수 있습니다.
preg_match_all() 함수
지정된 정규식에 따라 주어진 문자열을 검색하고, 특성에 일치하는 부분을 추출합니다.
$pattern='/t(.*?)st/'; $str='tgvregbvst test tdst'; var_dump(preg_match_all($pattern,$str,$arr)); var_dump($arr);
출력 결과는 다음과 같습니다.
int(3) array(2) { [0]=> array(3) { [0]=> string(10) "tgvregbvst" [1]=> string(4) "test" [2]=> string(4) "tdst" } [1]=> array(3) { [0]=> string(7) "gvregbv" [1]=> string(1) "e" [2]=> string(1) "d" } }
그는 조건을 충족하는 모든 항목을 나열하지만 preg_match() 함수는 다릅니다.
preg_match() 함수
는 정규식 일치를 수행하고 패턴
에 대한 일치 수를 반환합니다. preg_match()
가 첫 번째 일치 후 검색을 중지하므로 값은 0(일치 없음) 또는 1이 됩니다. pattern
的匹配次数。它的值将是0次(不匹配)或1次,因为preg_match()
在第一次匹配后将会停止搜索。
$pattern='/t(.*?)st/'; $str='tgvregbvst test tdst'; var_dump(preg_match($pattern,$str,$arr)); var_dump($arr);
我们可以看到输出结果是:
int(1) array(2) { [0]=> string(10) "tgvregbvst" [1]=> string(7) "gvregbv" }
相比上一个函数,这个函数输出结果少了很多,这正是他们的不同之处。
preg_match_all()
不同于preg_match()
函数,它会一直搜索subject
直到到达结尾。如果发生错误preg_match()
返回false
rrreee
rrreee이전 함수와 비교하면 이 함수의 출력 결과가 훨씬 적습니다.
preg_match_all()
은 끝에 도달할 때까지 subject
를 계속 검색하는 preg_match()
함수와 다릅니다. 오류가 발생하면 preg_match()
는 false
를 반환합니다. 🎜🎜추천 학습: "🎜PHP 비디오 튜토리얼🎜"🎜위 내용은 PHP의 preg_match와 preg_match_all 함수의 차이점에 대한 간략한 토론의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!