ExplicitCapture
ExplicitCapture
rend toutes les parenthèses non-capturables, sauf si vous utilisez des captures nommées. Cela peut rendre les expressions rationnelles un peu plus lisibles parce que vous pouvez écrire (...)
où vous auriez dû écrire (?:...)
pour faire un groupe non-capturant.
L'inconvénient, bien sûr, est que si vous faites veulent capter une partie du match, vous devez écrire Name: (?<name>.*)
au lieu de Name: (.*)
, par exemple.
ECMAScript
provoque le moteur regex se comporte comme un moteur de regex ECMAScript, ce qui signifie laisser tomber beaucoup de fonctionnalités regex du moteur regex .NET (e g, JavaScript..) - mais il vous permet d'utiliser des expressions rationnelles JavaScript sans changement.
CultureInvariant
indique au moteur regex d'ignorer les différences culturelles dans l'appariement des cas. Par exemple, en turc, la version majuscule de i
n'est pas I
comme elle est en anglais, mais İ
, donc une correspondance sensible à la culture, sensible à la casse, de i
ne correspondrait pas à I
sur un système turc.
Vous voudrez peut-être vérifier this link et this link pour plus d'informations à ce sujet.