Position actuelle: Accueil> Derniers articles> Quelles sont les paramètres communs de la fonction MB_REGEX_SET_OPTIONS? Analyse détaillée

Quelles sont les paramètres communs de la fonction MB_REGEX_SET_OPTIONS? Analyse détaillée

gitbox 2025-09-21

Analyse des paramètres communs

Les paramètres de MB_REGEX_SET_OPTIONS () sont principalement les options suivantes, qui sont généralement transmises en tant que chaînes:

  1. I - Ignorer l'exemple de correspondance du cas: MB_REGEX_SET_OPTIONS ('i');
    Fonction: Faites des expressions régulières insensibles au cas lors de la correspondance des lettres. Par exemple, la correspondance ABC peut également correspondre à ABC .

  2. x - Exemple de mode étendu: MB_REGEX_SET_OPTIONS ('x');
    Fonction: permet d'utiliser des espaces et des commentaires dans des expressions régulières pour améliorer la lisibilité. Par exemple:

     <span><span><span class="hljs-title function_ invoke__">mb_ereg</span></span><span>(<span class="hljs-string">'a # correspondrea
            b # correspondreb
            c'</span>, </span><span><span class="hljs-variable">$str</span></span><span>);
    </span></span>
  3. S - EXEMPLE MODE UNE-LINE: MB_REGEX_SET_OPTIONS («S»);
    Fonction: Faites correspondre les points . Tous les personnages, y compris les ruptures de ligne. Par défaut , . ne correspond pas à Newlines.

  4. M - Exemple de mode multi-lignes: MB_REGEX_SET_OPTIONS ('M');
    Fonction: Match ^ et $ respectivement le début et la fin de chaque ligne, pas seulement le début et la fin de la chaîne.

  5. A - Exemple de correspondance forcé du début d'une chaîne: MB_REGEX_SET_OPTIONS ('A');
    Fonction: nécessite une correspondance régulière depuis le début de la chaîne cible, sinon au début, la correspondance échoue.

  6. D - Exemple de correspondance forcé à partir de la fin de la chaîne: MB_REGEX_SET_OPTIONS ('D');
    Fonction: nécessite une correspondance régulière à partir de la fin de la chaîne cible.


Utiliser la combinaison des paramètres

Ces paramètres peuvent être combinés, tels que l'ignorance de cas et l'activation du mode multi-ligne en même temps:

 <span><span><span class="hljs-title function_ invoke__">mb_regex_set_options</span></span><span>(</span><span><span class="hljs-string">'im'</span></span><span>);
</span></span>

Cela signifie que les matchs réguliers ignoreront le cas et ^ et $ correspondra au début et à la fin de chaque ligne, pas seulement toute la chaîne.


Exemple d'utilisation

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-title function_ invoke__">mb_regex_set_options</span></span><span>(</span><span><span class="hljs-string">'i'</span></span><span>); </span><span><span class="hljs-comment">// Ignorer le cas</span></span><span>

</span><span><span class="hljs-variable">$pattern</span></span><span> = </span><span><span class="hljs-string">"php"</span></span><span>;
</span><span><span class="hljs-variable">$subject</span></span><span> = </span><span><span class="hljs-string">"PHP is great!"</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">mb_ereg</span></span><span>(</span><span><span class="hljs-variable">$pattern</span></span><span>, </span><span><span class="hljs-variable">$subject</span></span><span>)) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"correspondre成功!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"correspondre失败!"</span></span><span>;
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

Résultat de sortie:

 <span><span>correspondre成功!
</span></span>

Comme vous pouvez le voir, MB_REGEX_SET_OPTIONS ('I') permet à PHP de correspondre à PHP , réalisant le cas insensible.