Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)

PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)

青灯夜游
青灯夜游Original
2021-08-05 14:32:322762Durchsuche

Im vorherigen Artikel haben wir eine Methode vorgestellt, um zu erkennen, ob ein Teilstring vorhanden ist. Wenn Sie interessiert sind, können Sie auf den Link klicken, um → „PHP-String-Lernen: Bestimmen, ob ein Teilstring vorhanden ist (Groß- und Kleinschreibung)“ anzuzeigen. Dieses Mal stellen wir Ihnen eine weitere Methode vor, um festzustellen, ob eine Teilzeichenfolge vorhanden ist. Sie können darauf zurückgreifen, wenn Sie sie benötigen.

Im vorherigen Artikel haben wir die Verwendung der Funktionen „stripos()“ und „strripos()“ eingeführt, um anhand des ersten oder letzten Vorkommens der Teilzeichenfolge zu bestimmen, ob bei diesen beiden Funktionen die Groß-/Kleinschreibung nicht beachtet wird wird ohne Berücksichtigung der Groß-/Kleinschreibung durchgeführt.

Wenn wir eine präzise Positionierung und eine strikte Erkennung benötigen, müssen wir manchmal unter Berücksichtigung der Groß- und Kleinschreibung suchen. Heute werden wir es herausfinden.

Schauen wir uns das folgende Beispiel an

<?php
header("Content-type:text/html;charset=utf-8");
$string = "ABCDCBAbcd";
$findme1 = "bC";
$findme2 = "bc";
$pos1 = strpos($string, $findme1);
$pos2 = strrpos($string, $findme1);
$pos3 = strpos($string, $findme2);
$pos4 = strrpos($string, $findme2);

if($pos1 !=FALSE){
	echo "子串 &#39;$findme1&#39; 在字符串  &#39;$string&#39; 中存在。";
}else{
	echo "子串  &#39;$findme1&#39; 在字符串  &#39;$string&#39; 中不存在。";
}

if($pos2 !=FALSE){
	echo "<br>子串  &#39;$findme1&#39; 在字符串  &#39;$string&#39; 中存在。";
}else{
	echo "<br>子串  &#39;$findme1&#39; 在字符串  &#39;$string&#39; 中不存在。";
}
if($pos3 !=FALSE){
	echo "<br>子串  &#39;$findme2&#39; 在字符串  &#39;$string&#39; 中存在。";
}else{
	echo "<br>子串  &#39;$findme2&#39; 在字符串  &#39;$string&#39; 中不存在。";
}

if($pos4 !=FALSE){
	echo "<br>子串  &#39;$findme2&#39; 在字符串  &#39;$string&#39; 中存在。";
}else{
	echo "<br>子串  &#39;$findme2&#39; 在字符串  &#39;$string&#39; 中不存在。";
}
?>

strpos() und strrpos()-Funktionen finden in einem Fall die Teilzeichenfolge $findme1 in der Zeichenfolge $string- sensible Art und Weise Oder $findme2. Wenn eine genaue Übereinstimmung vorliegt und eine Teilzeichenfolge vorhanden ist, wird das erste oder letzte Vorkommen der Teilzeichenfolge in der Zeichenfolge zurückgegeben. Wenn die Teilzeichenfolge nicht in der Zeichenfolge gefunden wird, wird FALSE zurückgegeben.

$string中查找子串$findme1或者$findme2。当完全匹配上,存在子串时,会返回子串在字符串的第一次或最后一次的出现位置;如果在字符串的没有找到子串,则返回FALSE

从上面的例子可以看出,只有子串"bc"和字符串“ABCDCBAbcd”是完全匹配,子串"bc"被认为是存在于字符串“ABCDCBAbcd”中的。因此输出结果为:

PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)

下面我们来详细了解一下strpos()和strrpos()函数。

  • strpos($string,$find,$start)函数可以返回子字符串首次出现的位置(区分大小写);

  • strrpos($string,$find,$start)函数可以返回子字符串最后一次出现的位置(区分大小写);

strpos()和strrpos()函数相似,都接受两个必需参数$string(被查找的字符串)和$find(要查找的子串),一个可省略参数$start(查找的开始位置)。注:字符串位置起始于 0,而不是 1。

<?php
header("Content-type:text/html;charset=utf-8");
$string = "ABCabcabcABC";
$findme1 = "c";
$findme2 = "C";
echo "子串  &#39;$findme1&#39; 第一次出现的位置:".strpos($string, $findme1);
echo "<br>子串  &#39;$findme1&#39; 最后一次出现的位置:".strrpos($string, $findme1);
echo "<br>子串  &#39;$findme2&#39; 第一次出现的位置:".strpos($string, $findme2);
echo "<br>子串  &#39;$findme2&#39; 最后一次出现的位置:".strrpos($string, $findme2);
?>

输出结果:

PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)

但strrpos()函数的参数$startWie aus dem obigen Beispiel ersichtlich ist, stimmen nur die Teilzeichenfolge „bc“ und die Zeichenfolge „ABCDCBAbcd“ vollständig überein, und die Teilzeichenfolge „bc" >" gilt als in der Zeichenfolge „<code>ABCDCBAbcd“ vorhanden. Das Ausgabeergebnis lautet also:

PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)

Schauen wir uns die Funktionen strpos() und strrpos() genauer an. PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)

strpos()- und strrpos()-Funktionen sind ähnlich, beide akzeptieren zwei erforderliche Parameter $string (die gesuchte Zeichenfolge) und $find (die Teilzeichenfolge, nach der gesucht werden soll), ein optionaler Parameter $start (die Startposition der Suche). Hinweis: Zeichenfolgenpositionen beginnen bei 0, nicht bei 1.

<?php
header("Content-type:text/html;charset=utf-8");
$string = "ABCabcabcABC";
$findme1 = "c";
$findme2 = "C";
echo "子串  &#39;$findme1&#39; 第一次出现的位置:".strpos($string, $findme1);
echo "<br>子串  &#39;$findme1&#39; 最后一次出现的位置:".strrpos($string, $findme1,-5);
echo "<br>子串  &#39;$findme2&#39; 第一次出现的位置:".strpos($string, $findme2);
echo "<br>子串  &#39;$findme2&#39; 最后一次出现的位置:".strrpos($string, $findme2,-5);
?>
Ausgabeergebnis:

PHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten)🎜🎜Der Parameter $start der Funktion strrpos() kann jedoch negative Werte annehmen. Wenn es sich um eine negative Zahl handelt, beginnt die Suche an der Zählposition am Ende der Zeichenfolge. 🎜rrreee🎜Ausgabeergebnis: 🎜🎜🎜🎜🎜Okay, das ist alles. Wenn Sie noch etwas wissen möchten, können Sie hier klicken. → →🎜php-Video-Tutorial🎜🎜🎜 Abschließend empfehle ich die Lektüre eines klassischen Kurses „🎜PHP String Processing (Jade Girl Heart Sutra Edition)🎜“, er ist kostenlos ~ kommen Sie und lernen Sie! 🎜

Das obige ist der detaillierte Inhalt vonPHP-String-Learning erkennt, ob ein Teilstring vorhanden ist (Groß-/Kleinschreibung beachten). 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