Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann man effizient prüfen, ob ein Element in einer Zeichenfolge vorhanden ist?

Wie kann man effizient prüfen, ob ein Element in einer Zeichenfolge vorhanden ist?

DDD
DDDOriginal
2024-11-15 19:54:031042Durchsuche

How to Efficiently Check for Element Presence in a String?

Effiziente Prüfung auf Elementpräsenz in einer Zeichenfolge

Die Feststellung, ob eine Zeichenfolge Elemente aus einem Array enthält, ist ein häufiges Programmierszenario. Während in Standardprogrammiersprachen möglicherweise keine integrierten Funktionen für diese spezielle Aufgabe vorhanden sind, ist es relativ einfach, eine benutzerdefinierte Funktion zu erstellen, um diese Funktionalität zu erreichen.

Betrachten Sie das Beispiel:

$string = 'My nAmE is Tom.';
$array = array("name","tom");

Zur Überprüfung Wenn die Zeichenfolge eines der Elemente im Array enthält, kann eine Funktion enthält() definiert werden:

function contains($str, array $arr)
{
    foreach($arr as $a) {
        if (stripos($str,$a) !== false) return true;
    }
    return false;
}

Diese Funktion durchläuft die Elemente des Arrays und führt eine Suche ohne Berücksichtigung der Groß- und Kleinschreibung für jedes Element innerhalb der Zeichenfolge durch mit stripos(). Wenn ein passendes Element in der Zeichenfolge gefunden wird, gibt die Funktion „true“ zurück und zeigt damit an, dass es vorhanden ist. Andernfalls wird „false“ zurückgegeben.

Mit dieser benutzerdefinierten Funktion können wir effizient prüfen, ob die bereitgestellte Zeichenfolge eines der Elemente im Array enthält, wie in der folgenden Verwendung gezeigt:

if(contains($string,$array))
{
    // do something to indicate the presence of an item
}

Das obige ist der detaillierte Inhalt vonWie kann man effizient prüfen, ob ein Element in einer Zeichenfolge vorhanden ist?. 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