suchen

Heim  >  Fragen und Antworten  >  Hauptteil

$zz = '/[0-5]\w+/'; Wofür wird das +-Zeichen verwendet? Warum ist es in einigen der folgenden Beispiele nicht enthalten?

<?php


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



$string = '1C';

$string2 = '1C$';


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

echo 'übereinstimmend, das Ergebnis ist:';

var_dump($matches);

}else{

echo 'keine Übereinstimmung Gehen Sie zu ';

}


?>

Q1:$zz = '/[0-5]w+/'; Warum wird es später in einigen Beispielen nicht verwendet? ?

F2: Warum ist das $string-Ausgabeergebnis 1C, sollte es nicht „1“ sein?

F3: Wenn das Ausgabeergebnis von $string 1C ist, sollte das Ausgabeergebnis von $string1 dann nicht „1C$“ sein?

益伦益伦2610 Tage vor1597

Antworte allen(3)Ich werde antworten

  • 路过

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

    [0-5]  可以匹配 0-5中的任意一个

    \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。$ 不在范围

    + 标识一次或多次

    Antwort
    0
  • 寻觅 beyond

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

    因为$,+,\等都是特殊符号,所以你要匹配这些字符时,必须在$pattern中明确指出要匹配哪个特殊符号(用反斜杠转移),

    比如你要匹配$string2中的$匹配出来,只需要将$zz = '/[0-5]\w+/';改为$zz = '/[0-5]\w+\$/';即可

    Antwort
    0
  • 寻觅 beyond

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

    Q1,+表示匹配前面的原子出现1次或多次

    Q2,参见Q1,+表示前面的\w(字符)出现1次或多次,所以1后面的C也会被匹配

    Q3,$,+,-等符号都是特殊的符号,忘记在哪看过一篇博客,\w不能匹配这些特殊的符号,你可以试一下把$改成其他字母,就能匹配出来了,至于原因,有大牛路过的话,希望讲解一下

    Antwort
    0
  • StornierenAntwort