Les paramètres de MB_REGEX_SET_OPTIONS () sont principalement les options suivantes, qui sont généralement transmises en tant que chaînes:
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 .
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> 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.
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.
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.
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.
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.
<span><span><span class="hljs-meta"><?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">?></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.