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!