Maison  >  Article  >  développement back-end  >  Comment localiser des éléments dans des chaînes et des tableaux en PHP ?

Comment localiser des éléments dans des chaînes et des tableaux en PHP ?

WBOY
WBOYoriginal
2021-11-04 16:37:061636parcourir

Dans l'article précédent "Vous permet de maîtriser rapidement le remplacement de chaînes PHP (exemples détaillés)", nous avons présenté en détail les connaissances pertinentes sur le remplacement de lits de caractères en PHP. Dans cet article, nous examinons le positionnement des chaînes dans PHP Connaissances pertinentes, J'espère que cela sera utile à tout le monde !

Comment localiser des éléments dans des chaînes et des tableaux en PHP ?

Dans l'article précédent, nous avons appris que si vous souhaitez remplacer des caractères dans une chaîne en PHP, vous devez utiliser la fonction substr_replace et str_replace fournies par Fonction PHP, cela peut résoudre le problème du remplacement de PHP. De même, le positionnement des chaînes est également très courant dans le processus de développement de PHP. substr_replace 函数与 str_replace 函数,这样就能够解决PHP替换的问题,同样的在PHP的开发过程中字符串的定位也是很常见的。

在PHP中想要搜索字符串在另一个字符串中是否出现,可以通过PHP中的strstr函数,接下来我们就来看一下怎样去定位查找一个字符串。

<strong><span style="font-size: 20px;">strstr</span></strong>函数-定位字符串元素

在PHP中可以通过strstr函数来搜索一个字符串在另一个字符串中的第一次出现,strstr函数的基本语法格式如下:

strstr(string,search,before_search)

其中需要注意的是:参数string表示的是需要搜索的字符串,参数search表示的是被搜索的字符串,如果该参数不是一个字符串那么这个参数就会被转化为整型并且作为字符的序号来使用,参数before_search默认的是false,如果设置为true的话,返回的结果就是参数search第一次出现之前的那部分字符串。

该函数的返回结果是从匹配点开始的字符串的剩余部分,如果未找到需要搜索的字符串,那么返回的结果就是flase。

接下来我们通过示例来看一下strstr函数的使用,示例如下:

<?php
$email  = &#39;123456789123456789@gamil.com&#39;;
echo $email. &#39;<br/>&#39;;//正常输出
$domain = strstr($email, &#39;@&#39;);//通过strstr函数来搜索@出现的第一次位置
echo $domain;
?>

输出结果:

Comment localiser des éléments dans des chaînes et des tableaux en PHP ?

在上述示例中,通过strstr函数返回的结果就是我们搜索的字符串之后剩余的部分。我们通过strstr函数完成了定位字符串的目的。

提到定位匹配在PHP中就不得不提到正则表达式了,在上文中我们通过strstr函数完成了定位字符串,在PHP中还有一个函数是preg_grep()函数,接下来我们一起来看一下它的用法。

<strong><span style="font-size: 20px;">preg_grep</span></strong>()函数-定位数组元素

在PHP中提到搜索定位,绕不过去的肯定就是正则表达式了,PHP就提供了 preg_grep() 通过正则表达式来进行匹配数组元素。

preg_grep()函数的基本语法格式如下:

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

其中需要注意的是:参数pattern是用正则表达式来定义的,也就是要搜索的模式,参数input表示的是要搜索的数组,参数flags一般设置为PREG_GREP_INVERT表示的是这时候的函数返回的结果是不匹配的 $pattern 元素所组成的数组。

接下来我们通过示例来看一下preg_grep

En PHP, si vous souhaitez rechercher si une chaîne apparaît dans une autre chaîne, vous pouvez utiliser la fonction strstr en PHP. Voyons ensuite comment localiser et trouver une chaîne.


<strong><span style="font-size: 20px;">strstr</span></strong>Fonction - Localisation des éléments de chaîne

Comment localiser des éléments dans des chaînes et des tableaux en PHP ?En PHP, vous pouvez utiliser la fonction strstr pour rechercher la première occurrence d'une chaîne dans une autre chaîne, strstr est le suivant :

<?php
$pattern = &#39;/[0-9]/&#39;;
$subject = array(&#39;weuy&#39;,&#39;r3ui&#39;,&#39;76as83&#39;,&#39;s&#39;,&#39;0ck9&#39;);
$arr = preg_grep($pattern,$subject);
show($arr);
function show($var){
    if(empty($var)){
        echo &#39;null&#39;;
    }elseif(is_array($var)||is_object($var)){
        echo &#39;
&#39;;
        print_r($var);
        echo &#39;
&#39;;
    }else{
        echo $var;
    }
}
echo &#39;<br/>&#39;;
$arr1 = preg_grep($pattern,$subject,PREG_GREP_INVERT);
show($arr1);
function show1($var1){
    if(empty1($var1)){
        echo &#39;null&#39;;
    }elseif(is_array($var1)||is_object($var1)){
        echo &#39;
&#39;;
        print_r($var1);
        echo &#39;
&#39;;
    }else{
        echo $var1;
    }
}
?>

Il est à noter que le paramètre string représente la chaîne à rechercher, et le paramètre search code> représente la chaîne recherchée. Si le paramètre n'est pas une chaîne, alors ce paramètre sera converti en entier et utilisé comme numéro de séquence de caractères. Le paramètre <code>before_search est par défaut false. est défini sur Si true, le résultat renvoyé est la partie de la chaîne avant la première occurrence de la recherche de paramètre.

Le résultat renvoyé par cette fonction est la partie restante de la chaîne à partir du point correspondant. Si la chaîne à rechercher n'est pas trouvée, le résultat renvoyé est faux.

Ensuite, jetons un coup d'œil à l'utilisation de la fonction strstr à travers un exemple. L'exemple est le suivant : 🎜rrreee🎜Résultat de sortie : 🎜🎜🎜Comment localiser des éléments dans des chaînes et des tableaux en PHP ?🎜🎜Dans l'exemple ci-dessus, le résultat renvoyé par la fonction strstr est la partie restante après la chaîne nous avons cherché. Nous atteignons l'objectif de localiser la chaîne via la fonction strstr. 🎜🎜En ce qui concerne la correspondance de positionnement, nous devons mentionner les expressions régulières en PHP. Dans ce qui précède, nous avons complété la chaîne de positionnement via la fonction strstr. Il existe une autre fonction en PHP qui est . preg_grep(), jetons un coup d'œil à son utilisation. 🎜🎜<strong><span style="max-width:90%">preg_grep</span></strong> () fonction - positionnement des éléments du tableau🎜🎜Quand il s'agit de positionnement de recherche en PHP, celui qui ne peut pas être contourné doit être des expressions régulières, et PHP fournit preg_grep() Faites correspondre les éléments du tableau via des expressions régulières. 🎜🎜Le format de syntaxe de base de la fonction preg_grep() est le suivant : 🎜rrreee🎜Il est à noter que le paramètre pattern est défini avec une expression régulière, c'est-à-dire , il doit être en mode recherche, le paramètre input représente le tableau à rechercher, et le paramètre flags est généralement défini sur PREG_GREP_INVERT pour représenter le résultat renvoyé par la fonction à ce moment-là est un tableau d'éléments $pattern sans correspondance. 🎜🎜🎜Ensuite, regardons l'utilisation de la fonction preg_grep() à travers un exemple. L'exemple est le suivant : 🎜rrreee🎜Résultat de sortie : 🎜🎜🎜🎜🎜🎜Grâce à l'exemple ci-dessus, nous pouvons faire correspondre les éléments du tableau, et la valeur des paramètres flags est différente, et les résultats renvoyés par la fonction preg_grep() sont également différents. 🎜🎜Si vous êtes intéressé, vous pouvez cliquer sur "🎜Tutoriel vidéo PHP🎜" pour en savoir plus sur les connaissances PHP. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn