>  Q&A  >  본문

$zz = '/[0-5]\w+/'; + 기호는 무엇에 사용됩니까? 아래의 일부 예에는 왜 포함되지 않습니까?

<?php


$zz = '/[0-5]w+/';



$string = '1C';

$string2 = '1C$';


if(preg_match($zz, $string, $matches)){

echo '일치, 결과는 다음과 같습니다:';

var_dump($matches);

}else{

echo '일치하지 않음 ';

}


?>

Q1:$zz = '/[0-5]w+/'로 이동하세요. 이 + 기호는 나중에 일부 예시에 포함되지 않은 이유는 무엇인가요? ?

Q2: $string 출력 결과가 1C인 이유는 무엇입니까?

Q3: $string의 출력 결과가 1C라면 $string1의 출력 결과도 “1C$”가 되어야 하지 않나요?

益伦益伦2529일 전1527

모든 응답(3)나는 대답할 것이다

  • 路过

    路过2017-10-21 22:24:59

    [0-5]는 0-5 중 하나와 일치할 수 있습니다.

    w는 밑줄을 포함한 모든 단어 문자와 일치합니다. '[A-Za-z0-9_]'와 동일합니다. $가 범위 내에 없습니다

    +는 한 번 이상 식별합니다

    회신하다
    0
  • 寻觅 beyond

    寻觅 beyond2017-10-21 12:35:29

    $, + 등은 모두 특수기호이므로 이들 문자를 일치시키려면 $pattern에서 어떤 특수기호를 일치시키고 싶은지 명확하게 표시해야 합니다(전송하려면 백슬래시 사용).

    예를 들어 다음과 같은 경우 $string2에서 일치시키려면 $zz = '/[0-5]w+/';를 $zz = '/[0-5]w+$/';로 변경하세요.

    회신하다
    0
  • 寻觅 beyond

    寻觅 beyond2017-10-21 12:27:02

    Q1, +는 이전 원자가 1번 이상 나타나는 것을 의미합니다.

    Q2, Q1 참조, +는 이전 w(문자)가 1번 이상 나타나는 것을 의미하므로 1 뒤의 C도 일치합니다.

    Q3, 다음과 같은 기호 $, +, -는 모두 특수 기호입니다. W는 이러한 특수 기호를 일치시킬 수 없습니다. $를 다른 문자로 변경해 보면 일치할 것입니다. 지나가다 설명해주셨으면 좋겠습니다

    회신하다
    0
  • 취소회신하다