Heim  >  Artikel  >  Backend-Entwicklung  >  Kann ein regulärer PHP-Ausdruck mit Arrays übereinstimmen?

Kann ein regulärer PHP-Ausdruck mit Arrays übereinstimmen?

青灯夜游
青灯夜游Original
2022-07-22 16:52:482443Durchsuche

Der reguläre PHP-Ausdruck kann mit Arrays übereinstimmen. In PHP können Sie die Funktion preg_grep() verwenden, um Elemente in einem Array mithilfe regulärer Ausdrücke abzugleichen. Diese Funktion kann nach jedem Element im Array suchen und ein Array zurückgeben, das aus allen Elementen besteht, die dem regulären Ausdruck entsprechen. regulärer Ausdruck, Array, $flags)“; der Parameter „$flags“ ist optional. Wenn der Wert auf „PREG_GREP_INVERT“ gesetzt ist, wird ein Array zurückgegeben, das aus Elementen im Array besteht, die nicht mit dem regulären Ausdruck übereinstimmen.

Kann ein regulärer PHP-Ausdruck mit Arrays übereinstimmen?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer

Der reguläre PHP-Ausdruck kann mit Arrays übereinstimmen.

In PHP denken wir beim regulären Matching an Strings. Tatsächlich können neben dem Abgleich von Zeichenfolgen auch reguläre Ausdrücke zum Abgleich von Arrays verwendet werden.

In PHP können Sie die Funktion preg_grep() verwenden, um Elemente in einem Array mithilfe regulärer Ausdrücke abzugleichen. Die Funktion

preg_grep() kann alle Elemente im Array durchsuchen und ein Array zurückgeben, das aus allen Elementen besteht, die dem regulären Ausdruck entsprechen. Das Syntaxformat dieser Funktion lautet wie folgt:

preg_grep($pattern, $input [, $flags = 0 ])

Die Parameterbeschreibung lautet wie folgt:

  • $pattern: das zu durchsuchende Muster, das der definierte reguläre Ausdruck ist;
  • $input: das zu durchsuchende Array;
  • $flags: verfügbar Der optionale Parameter kann auf PREG_GREP_INVERT gesetzt werden. In diesem Fall gibt die Funktion ein Array zurück, das aus Elementen im Array besteht, die nicht mit dem angegebenen Muster $pattern übereinstimmen. Die Funktion

perg_grep() durchläuft jedes Element im $input-Array, gleicht das Element mit dem Muster $pattern ab und gibt dann die Elemente zurück, die erfolgreich übereinstimmen oder nicht übereinstimmen.

Beispiel 1: Gibt die angegebenen übereinstimmenden Elemente im Array zurück

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$array = array(1, 2, 3.4, 53, 7.9);
echo "原数组:";
var_dump($array);

// 返回所有包含浮点数的元素
$fl_array = preg_grep("/^(\d+)?\.\d+$/", $array);
echo "返回所有包含浮点数的元素:";
var_dump($fl_array);
?>

Kann ein regulärer PHP-Ausdruck mit Arrays übereinstimmen?

Beispiel 2:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$test_arr = array(
    &#39;PHP中文网&#39;,
    &#39;http://www.php.cn/&#39;,
    &#39;php教程&#39;,
    &#39;abcdefg&#39;
);
$preg = &#39;/^[a-z]/&#39;;
$preg_arr_1 = preg_grep($preg, $test_arr);
$preg_arr_2 = preg_grep($preg, $test_arr, PREG_GREP_INVERT);
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
var_dump($preg_arr_1);
var_dump($preg_arr_2);
?>

Kann ein regulärer PHP-Ausdruck mit Arrays übereinstimmen?

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonKann ein regulärer PHP-Ausdruck mit Arrays übereinstimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn