이전 기사에서는 "PHP 정규식의 원자란 무엇입니까?"에 대해 소개했습니다. 어떤 내용으로 구성되어 있나요? (코드 포함) ", 이 기사에서는 계속해서 PHP의 메타문자가 무엇인지 소개합니다. 정규식 메타문자를 어떻게 사용하나요? (첨부코드)
메타 문자(원자 수식어)
원자 번호 수식어
+는 이전 원자가 여러 번 나타나는 것을 의미합니다.
? e 번 또는 1 번
*은 이전 원자가 B 번 1 번 이상 나타남을 의미합니다
{m,n} 은 이전 원자가 H 번 이상, 최대 N 번 나타남을 의미합니다
{}는 이전을 의미합니다. 원자가 지정된 횟수만큼 나타남을 의미합니다.
{m,}은 이전 원자가 적어도
단어 경계 수정자(이해)
단어 경계란 무엇입니까?
단어 분할 가능 문자는 공백, 탭 기호, 특수 문자, 문자열의 시작과 끝, 각 줄의 끝을 포함하는 단어 경계입니다.
단어 경계로 사용할 수 없는 부분은 숫자, 문자 그리고 _
b는 단어 경계를 나타냅니다.
B는 단어가 아닌 경계를 나타냅니다.
문자열 경계 수식어(즉, 시작 그리고 end )
는 지정된 문자로 시작하는 콘텐츠를 나타냅니다.
$는 지정된 문자로 끝나는 콘텐츠를 나타냅니다.
^String$은 특정 문자열과 정확히 일치하는 것을 나타냅니다. an error
^ 및 $를 사용하여 각 줄의 시작과 끝을 일치시키려면 패턴 수정자 m을 사용하여 여러 줄로 처리해야 합니다.
수식어 선택
Mode 단위()
1. 우선순위 변경
2. 원자수 수식어 사용 목적으로 여러 원자를 하나의 원자로 취급합니다.
3. 대괄호와 일치하는 콘텐츠를 메모리에 저장합니다.
4. 원자 번호 수식자를 사용하여 원자를 시뮬레이션하는 데에만 ()를 사용하는 경우 괄호 시작 부분에 ?:를 사용하여 메모리에 저장하는 효과를 해제할 수 있습니다. 효율성을 향상시킵니다.
콘텐츠(Google)를 일치시키고 싶다고 가정해 보겠습니다. 이때 방금 출력한 Google의 두 번째 o가 $pattern = '/를 정의하면 존재할 수도 있고 존재하지 않을 수도 있다는 요구 사항이 있습니다. google/ ';정의를 마친 후 매칭을 수행하여 매칭 결과가 성공한 것으로 확인되었습니다(실행 결과는 아래와 같습니다). 그러나 두 번째 o를 삭제하자 매칭 결과가 실패했습니다.
<?php //进行匹配 $str = $_POST['str']; //$pattern = '/a/' ; //调用正则匹配函数 $pattern = '/google/'; $result = preg_match($pattern , $str , $match); echo ' 匹配结果为: '.$result; echo '<hr/>' ; if ( $result){ echo '<font color="pink" size="5 ">匹配成功</font>'; }else{ echo '<font color="red">匹配失败</font>'; } var_dump($match); ?>
Code 결과
이때 두 번째 o가 존재할 수 있는지 여부를 설정하려면 두 번째 o 뒤에 물음표(?)를 삽입하여 이전 원자가 있음을 표시하면 됩니다. 0회 또는 1회 나타날 수 있음), 이때 다시 일치하면 결과가 성공적으로 일치함을 알 수 있습니다.
<?php //进行匹配 $str = $_POST['str']; //$pattern = '/a/' ; //调用正则匹配函数 $pattern = '/goo?gle/'; $result = preg_match($pattern , $str , $match); echo ' 匹配结果为: '.$result; echo '<hr/>' ; if ( $result){ echo '<font color="pink" size="5 ">匹配成功</font>'; }else{ echo '<font color="red">匹配失败</font>'; } var_dump($match); ?>
코드 결과는 다음과 같습니다.
(o)를 원하는 경우 한 번 또는 여러 번 나타날 수 없습니다. 그런 다음 (?)를 사용하여 물음표를 더하기 기호로 변경합니다
$pattern = '/goo+gle/';
그러면 실행 결과가 다음과 같이 표시됩니다.
추천 학습: "PHP 비디오 튜토리얼 》
위 내용은 PHP의 메타문자란 무엇입니까? 정규식 메타문자를 어떻게 사용하나요? (코드 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!